Variables এর ডিক্লারেশন এবং ব্যবহার

Prolog এর বেসিক সিনট্যাক্স (Basic Syntax in Prolog) - প্রোলগ প্রোগ্রামিং (Prolog Programming) - Computer Programming

273

প্রোলগ একটি লজিক্যাল প্রোগ্রামিং ভাষা, এবং এটি ডিক্লারেটিভ পদ্ধতিতে কাজ করে। এখানে প্রোগ্রামাররা মূলত ফ্যাক্ট (facts) এবং নিয়ম (rules) দিয়ে সমস্যা সমাধান করেন। প্রোলগে, ভেরিয়েবলস (Variables) এমন একটি গুরুত্বপূর্ণ উপাদান, যা সম্পর্কিত তথ্য বা ফ্যাক্ট এবং নিয়মগুলোর মধ্যে অনির্ধারিত (unknown) বা পরিবর্তনশীল মানের প্রতিনিধিত্ব করে। প্রোলগে ভেরিয়েবলসকে একটি নির্দিষ্ট অর্থে ব্যবহার করা হয়।


প্রোলগে ভেরিয়েবলস এর ডিক্লারেশন:

প্রোলগে ভেরিয়েবলস সাধারণত বড় হাতের অক্ষর দিয়ে শুরু হয়। অর্থাৎ, প্রোলগে যে কোনো ভেরিয়েবল নামের প্রথম অক্ষরটি যদি বড় হাতের হয়, তাহলে সেটি ভেরিয়েবল হিসেবে গণ্য হবে। উদাহরণস্বরূপ, X, Y, Person ইত্যাদি ভেরিয়েবলস হিসেবে ব্যবহার করা হয়।

ভেরিয়েবল ডিক্লারেশনের উদাহরণ:

পিতা(অজিজ, রহমান).
পিতা(রহমান, শাওন).

এখানে, অজিজ, রহমান, এবং শাওন হল ফ্যাক্ট, কিন্তু X বা Y ভেরিয়েবল হিসেবে ব্যবহার করা যাবে, যেমন:

পিতা(X, Y).

এখানে X এবং Y ভেরিয়েবল, এবং তাদের মান ডাটা বা সম্পর্কের ভিত্তিতে প্রোলগ খুঁজে বের করবে।


প্রোলগে ভেরিয়েবলস এর ব্যবহার:

প্রোলগে ভেরিয়েবলস মূলত ডেটার খোঁজ বা সংশ্লিষ্ট সম্পর্ক বের করার জন্য ব্যবহৃত হয়। যখন কোনো ফ্যাক্ট বা নিয়ম ব্যবহার করা হয় এবং সেগুলির মধ্যে অনির্ধারিত মান থাকে, তখন প্রোলগ ওই মান খুঁজে বের করার জন্য ভেরিয়েবল ব্যবহার করে।

উদাহরণ ১: ভেরিয়েবল ব্যবহার

ধরা যাক, আপনার কাছে দুটি ফ্যাক্ট আছে:

পিতা(অজিজ, রহমান).
পিতা(রহমান, শাওন).

এখন, আপনি যদি জানতে চান, "রহমানের পিতা কে?", তবে আপনি নিচের কোয়ারিটি চালাতে পারেন:

?- পিতা(X, রহমান).

এখানে, X একটি ভেরিয়েবল, এবং প্রোলগ এটি খুঁজে বের করবে যে, রহমান এর পিতা কে। এর আউটপুট হবে:

X = অজিজ.

অর্থাৎ, রহমানের পিতা হলো অজিজ

উদাহরণ ২: একাধিক ভেরিয়েবল ব্যবহার

যদি আপনি জানতে চান, "অজিজের পিতা কে?", তাহলে আপনি নিচের কোয়ারিটি চালাতে পারেন:

?- পিতা(অজিজ, Y).

এখানে Y একটি ভেরিয়েবল, এবং প্রোলগ এটি খুঁজে বের করবে যে, অজিজ এর পিতা কে। আউটপুট হবে:

Y = রহমান.

অর্থাৎ, অজিজের পিতা হলো রহমান

উদাহরণ ৩: নিয়মে ভেরিয়েবল ব্যবহার

ধরা যাক, আপনি একটি নিয়ম তৈরি করেছেন, যা বলে:

পিতা(X, Y) :- পিতা(Y, Z).

এটি বলে যে, X এর পিতা Y হলে, তখন Y এর পিতা Z। এই নিয়মের মাধ্যমে আপনি পিতা সম্পর্কের আরও গভীর অনুসন্ধান করতে পারেন।

উদাহরণস্বরূপ, আপনি যদি জানতে চান, "অজিজের পিতার পিতা কে?", তাহলে আপনি কোয়ারি করতে পারেন:

?- পিতা(অজিজ, X), পিতা(X, Y).

এখানে X এবং Y দুটি ভেরিয়েবল, এবং প্রোলগ এটি খুঁজে বের করবে। এর আউটপুট হবে:

X = রহমান,
Y = শাওন.

অর্থাৎ, অজিজের পিতার পিতা হলো শাওন


প্রোলগে ভেরিয়েবলস এর কিছু গুরুত্বপূর্ণ বিষয়:

  1. ভেরিয়েবল এর সীমা:
    প্রোলগের মধ্যে ভেরিয়েবল যতক্ষণ না একটি ফ্যাক্ট বা নিয়ম দিয়ে পূর্ণ হয়, ততক্ষণ পর্যন্ত এটি অনির্ধারিত (unknown) থাকে।
  2. একক ভেরিয়েবলস:
    প্রোলগে প্রতিটি ভেরিয়েবলকে আলাদা এবং নির্দিষ্ট একটি মান হিসেবে গণ্য করা হয়। যখন একটি ভেরিয়েবল কোনও মান নেয়, এটি ওই মানের জন্য নির্দিষ্ট হয়ে যায়।
  3. ভেরিয়েবল ম্যাচিং:
    প্রোলগে, যখন একটি কোয়ারি চালানো হয়, তখন প্রতিটি ভেরিয়েবল ফ্যাক্ট বা নিয়ম এর সাথে ম্যাচ (match) করা হয়, এবং সম্ভাব্য মান বের করা হয়।

সারসংক্ষেপ:

প্রোলগে ভেরিয়েবল এমন একটি উপাদান, যা অজানা বা অনির্ধারিত মান প্রতিনিধিত্ব করে। প্রোলগে ভেরিয়েবলস বড় হাতের অক্ষর দিয়ে শুরু হয় (যেমন, X, Y, Person ইত্যাদি)। এটি ফ্যাক্ট বা নিয়ম থেকে তথ্য বের করার জন্য ব্যবহৃত হয় এবং ম্যাচিং প্রক্রিয়ার মাধ্যমে প্রোলগ সেই মানের উপর ভিত্তি করে ফলাফল প্রদান করে।

Content added By
Promotion

Are you sure to start over?

Loading...