কন্ডিশনাল লজিক
এই অধ্যায়ে আমরা কন্ডিশনাল লজিক সম্পর্কে জানব।
আচ্ছা কন্ডিশন এর অর্থ কি?
আমরা কন্ডিশন এর বাংলা অর্থ জানি শর্ত। আচ্ছা আমাদের কি মনে পড়ে ছোট থাকতে আমরা যখন কোন কিছুর জন্য বায়না করতাম সেই সময় আমাদের বাবা-মা ঐ বায়নাটা পূরণ করার আগে একটা শর্ত দিতেন যে ভালো করে পড়াশোনা করতে হবে। ঠিক তেমনি আমরা প্রোগ্রামিং এর মাঝেও শর্ত জুড়ে দিতে পারি। তবে তার আগে আমরা অ্যালগরিদম ও ফ্লোচার্ট সম্পর্কে জানব।
অ্যালগরিদম ও ফ্লোচার্ট আচ্ছা কারও কি মনে পরে লুবনের কথা?
আজ সে প্রথম পলিটেকনিকে যাবে ভর্তি হওয়ার জন্য। তাই তাকে বন্দর থেকে সিএনজিতে উঠে পলিটেকনিকের গেটের সামনে যেতে হবে। তারপর সে পলিটেকনিকে প্রবেশ করবে। তারপর তাকে যেতে হবে ভর্তি হওয়ার রুমে যেখানে তাকে তার সব তথ্য জমা দিয়ে ভর্তি হতে হবে। আমরা উপরে লুবনের পলিটেকনিকের ভর্তি হওয়ার ধাপ গুলি নিয়ে আলোচনা করেছি। এখন আমরা যদি এই ধাপগুলিকে প্রোগ্রামিং এর মাধ্যমে প্রকাশ করতে চাই তখন তাকে বলা হবে অ্যালগরিদম।আর সেই অ্যালগরিদমকে যদি আমরা চিত্রের মাধ্যমে প্রকাশ করতে চাই তাহলে তাকে বলা হবে ফ্লোচার্ট।
ফ্লোচার্ট এর চিত্র আমরা যখন কোন সিদ্ধান্ত গ্রহন করি তখন সেই সিদ্ধান্তের ফলাফল ২ টি হতে পারে হ্যা কিংবা না। আর কম্পিউটারের ভাষায় ০ অথবা ১ । আর পাইথনে হিসাব করা হবে ০ কে মিথ্যা ও ১ কে সত্য হিসাবে। আমরা যখন পাইথন প্রোগ্রামিং করব তখন নিচের স্টেটমেন্ট গুলা ব্যাবহার করে প্রোগ্রামিং করবঃ if স্টেটমেন্টঃ আমরা যখন পাইথন প্রোগ্রামিং করব তখন if স্টেটমেন্ট দিয়ে আমরা কন্ডিশনের শুরু করব। else স্টেটমেন্টঃ আমরা যখন পাইথন প্রোগ্রামিং এর কন্ডিশন শেষ করব তখন else স্টেটমেন্ট ব্যাবহার করব। আমরা একটা কোড করব এখন if ও else দিয়ে। যেখানে আমরা ৫০ নাম্বারকে কন্ডিশন ব্যাবহার করে পাশ কিংবা ফেল হিসাব করব। আমরা ধরে নিয়েছি ঐ স্কুলটাতে ৪৫ নাম্বার অর্জন করতে পারলে তাকে পাশ হিসাবে ধরা হবে। তাহলে আমারদের কোডঃ
a=50
if a>=45:
print ("pass")
else:
print ("fail")
এখন আমি প্রত্যেকটি লাইন বুঝিয়ে দেচ্ছিঃ a=50 লিখে আমরা কম্পিউটার এর মেমরিতে ৫০ নাম্বার জমা রাখলাম এবং a এর মান 50 । এখন আমরা কম্পিউটারকে বুঝালাম if অর্থ যদি । যদি a এর মান ৪৫ এর সমান (=) কিংবা তার (>) বেশি হয় তাহলে print ("pass") মানেহ পাশ দেখাবে। else অর্থ নাহলে । নাহলে print ("fail") প্রিন্ট করবে ফেল। এখন লুবন ভাবছে পাশ ফেল তো আমি বাহির করতে পারলাম কিন্তু এ+ , এ- কিভাবে হিসাব করব ? আসলেই তো চিন্তার বিষয় :/ লুবন ভাবছে আর তার সাথে else ও if দুজনেই ভাবছে। হঠাৎ else ও if সিদ্ধান্ত নিলো যে তারা দুজন এক হয়ে একটি নতুন রিজার্ব ওয়ার্ড তৈরি করবে যার নাম হবে elif ( বি.দ্রঃ elif পাইথনের একটি রিজার্ব ওয়ার্ড) । elif এর অর্থ হল অন্যথায়। আমরা elif ব্যাবহার করে এখন খুব সহজেই এ+ , এ- নির্ধারণ করতে পারব। মনে করি কেউ ৮০ পেলে তাকে এ+ ও কেউ ৭০ পেলে তাকে এ- ধরা হবে। আর লুবন ৭৫ পেয়েছে তাহলে আমাদের কোড করতে হবেঃ
a=75
if a>=80:
print("A+")
elif a>=70:
print("A-")
else:
print ("Fail")
আশা করি এই কোড সাবাই বুঝবে। এতক্ষণ লুবন কোড করেছে আর অনেক সমস্যা সমাধানও করেছে। কিন্তু এখন সে একটা সমস্যা সমাধান করতে চাচ্ছে আর তা হল তাদের একটা দোকান আছে আর সেই দোকান থেকে যে ৫০০০ টাকা বা তার বেশি টাকার পণ্য ক্রয় করব তাকে সে ৫% ডিস্কাউন্ট দিবে। আর যে ৩০০০ টাকা বা তার বেশি ক্রয় করবে তাকে ৩% ডিস্কাউন্ট দেয়া হবে আর কেউ যদি ১০০০ টাকার জিনিস ক্রয় করে তাকে ০.৫% ডিস্কাউন্ট দেয়া হবে। আমাদের শুধু হিসাব করতে হবে কে কত ডিস্কাউন্ট পাবে। কি পারবে এই সমস্যার সমাধান করতে ? আশা করি সবাই পারবে এই সমস্যার সমাধান করতে।
আচ্ছা কন্ডিশন এর অর্থ কি?
আমরা কন্ডিশন এর বাংলা অর্থ জানি শর্ত। আচ্ছা আমাদের কি মনে পড়ে ছোট থাকতে আমরা যখন কোন কিছুর জন্য বায়না করতাম সেই সময় আমাদের বাবা-মা ঐ বায়নাটা পূরণ করার আগে একটা শর্ত দিতেন যে ভালো করে পড়াশোনা করতে হবে। ঠিক তেমনি আমরা প্রোগ্রামিং এর মাঝেও শর্ত জুড়ে দিতে পারি। তবে তার আগে আমরা অ্যালগরিদম ও ফ্লোচার্ট সম্পর্কে জানব।
অ্যালগরিদম ও ফ্লোচার্ট আচ্ছা কারও কি মনে পরে লুবনের কথা?
আজ সে প্রথম পলিটেকনিকে যাবে ভর্তি হওয়ার জন্য। তাই তাকে বন্দর থেকে সিএনজিতে উঠে পলিটেকনিকের গেটের সামনে যেতে হবে। তারপর সে পলিটেকনিকে প্রবেশ করবে। তারপর তাকে যেতে হবে ভর্তি হওয়ার রুমে যেখানে তাকে তার সব তথ্য জমা দিয়ে ভর্তি হতে হবে। আমরা উপরে লুবনের পলিটেকনিকের ভর্তি হওয়ার ধাপ গুলি নিয়ে আলোচনা করেছি। এখন আমরা যদি এই ধাপগুলিকে প্রোগ্রামিং এর মাধ্যমে প্রকাশ করতে চাই তখন তাকে বলা হবে অ্যালগরিদম।আর সেই অ্যালগরিদমকে যদি আমরা চিত্রের মাধ্যমে প্রকাশ করতে চাই তাহলে তাকে বলা হবে ফ্লোচার্ট।
a=50
if a>=45:
print ("pass")
else:
print ("fail")
এখন আমি প্রত্যেকটি লাইন বুঝিয়ে দেচ্ছিঃ a=50 লিখে আমরা কম্পিউটার এর মেমরিতে ৫০ নাম্বার জমা রাখলাম এবং a এর মান 50 । এখন আমরা কম্পিউটারকে বুঝালাম if অর্থ যদি । যদি a এর মান ৪৫ এর সমান (=) কিংবা তার (>) বেশি হয় তাহলে print ("pass") মানেহ পাশ দেখাবে। else অর্থ নাহলে । নাহলে print ("fail") প্রিন্ট করবে ফেল। এখন লুবন ভাবছে পাশ ফেল তো আমি বাহির করতে পারলাম কিন্তু এ+ , এ- কিভাবে হিসাব করব ? আসলেই তো চিন্তার বিষয় :/ লুবন ভাবছে আর তার সাথে else ও if দুজনেই ভাবছে। হঠাৎ else ও if সিদ্ধান্ত নিলো যে তারা দুজন এক হয়ে একটি নতুন রিজার্ব ওয়ার্ড তৈরি করবে যার নাম হবে elif ( বি.দ্রঃ elif পাইথনের একটি রিজার্ব ওয়ার্ড) । elif এর অর্থ হল অন্যথায়। আমরা elif ব্যাবহার করে এখন খুব সহজেই এ+ , এ- নির্ধারণ করতে পারব। মনে করি কেউ ৮০ পেলে তাকে এ+ ও কেউ ৭০ পেলে তাকে এ- ধরা হবে। আর লুবন ৭৫ পেয়েছে তাহলে আমাদের কোড করতে হবেঃ
a=75
if a>=80:
print("A+")
elif a>=70:
print("A-")
else:
print ("Fail")
আশা করি এই কোড সাবাই বুঝবে। এতক্ষণ লুবন কোড করেছে আর অনেক সমস্যা সমাধানও করেছে। কিন্তু এখন সে একটা সমস্যা সমাধান করতে চাচ্ছে আর তা হল তাদের একটা দোকান আছে আর সেই দোকান থেকে যে ৫০০০ টাকা বা তার বেশি টাকার পণ্য ক্রয় করব তাকে সে ৫% ডিস্কাউন্ট দিবে। আর যে ৩০০০ টাকা বা তার বেশি ক্রয় করবে তাকে ৩% ডিস্কাউন্ট দেয়া হবে আর কেউ যদি ১০০০ টাকার জিনিস ক্রয় করে তাকে ০.৫% ডিস্কাউন্ট দেয়া হবে। আমাদের শুধু হিসাব করতে হবে কে কত ডিস্কাউন্ট পাবে। কি পারবে এই সমস্যার সমাধান করতে ? আশা করি সবাই পারবে এই সমস্যার সমাধান করতে।
Comments
Post a Comment