মজার ও সহজ প্রোগ্রামিং, পাইথন প্রোগ্রামিং [পর্ব-০৮] :: পাইথন For Loop ও Boolean Expressions

0
680

আমার প্রিয় বন্ধুরা , আমি আজ আবার আপনাদের মাঝে হাজির হলাম পাইথন নিয়ে । আমাদের আজকের আলোচন্র বিষয় হল For Loop ও Boolean expressions । আসুন প্রথমে জেনে নিই For Loop কী ?

For Loop : For এর অর্থ হচ্ছে জন্য । অর্থাত যখন কোন কিছুর জন্য কোন কাজ করতে বলা হয় তখন For Loop এর অবতারণা করা হয় । For Loop এর মাধ্যমে অনেক বড় বড় কাজ সহজে করে ফেলা যায় । এটা আবার অনেকটা While Loop এর মত ও কাজ করে । উদাহরণ টা দিলে বিষয় টা আরও ক্লিয়ার হবে ।

a = range(1, 50)
for c in a:
    print(c)

এখানে প্রথমে আমরা range নামের একটি ফাংশন নিয়েছি । () ভিতর range এর মান টা বলে দিয়েছি যে ( ১,৫০) দ্বারা । অর্থাত range টা হল ১ থেকে ৫০ পর্যন্ত । এরপর c নামের একটা ভ্যরিয়েবল নিয়ে বলেছি যে c ,a এর মধ্যে থাকলে c এর মান প্রিন্ট কর । ফলে পাইথন ১ থেকে ৫০ পর্যন্ত সংখ্যা প্রিন্ট করেছে । অথর্খাত ভ্যরিয়েবলটি ১ থেকে ৫০ এর মধ্যে চালিত হয়েছে । উপরের উদাহরণটিকে আমরা নিচের মত করেও লিখতে পারি ।

for c in range(1, 50):
print(c)

অর্থাত এখানে আমরা সরাসরি c এর range টা বলে দিয়েছি । তারপর c এর মান প্রিন্ট করতে বলেছি ।আমরা কয়েক পর্ব আগে ফিবোনাক্কি রাশিমালা বের করার জন্য এক টা প্রোগ্রাম তৈরী করেছিলাম তা কি মনে পড়ে ? এবার দেখুন আমরা সেম একটি প্রোগ্রাম তৈরী করব তবে For Loop দ্বারা । সবাই এটি লিখুন :

a = 0
b = 1
for c in range(1, 50):
    print(a)
    n =a + b
    a =b
    b =n

এখানে প্রথমে a ও b এর মান ঠিক করে দিওয়া হয়েছে ০ ও ১ । যারা ফিবোনাক্কি রাশিমালা সম্পর্কে জানেন না তারা ৫ম পর্ব টি একবার পড়ে আসুন । এরপর c নামের ভ্যরিয়েবল নিয়ে 1 হতে 50 এর মধ্যে For Loop চালনা করা হয়েছে । তারপর a প্রিন্ট করতে বলা হয়েছে । এরপর প্রোগ্রাটিকে বলে দেওয়া হয়েছে n এর মান হবে a ও b এর মানের যোগফল । নতুন a হবে b এর সমান । আর b হবে n এর সমান । এখন প্রোগ্রামটি প্রথমে a এর মান ০ প্রিন্ট করবে , যেটা আমরা বলে দিয়েছি । তারপর a ও b এর মান যোগ করে n এর মান প্রিন্ট করবে ১ । তারপর যেহেতু বলেছি b =n , সেহেতু b এর মান হবে ১ । । পরে আবার a এর মান হবে a = b = 1 । তারপর আবার n =a + b এর মাধ্যমে n এর মান অর্থাত b এর মান আসছে ২ । a =b দ্বারা a এর মান ও ২ । যেহেতু আমরা a শুধু এর মান প্রিন্ট করতে বলেছি তাই b টা কোন ফ্যাক্টর না । এভাবে চলতে থাকবে ৫০ পর্যন্ত । আপনারা আপনাদের প্রয়োজনে আরও বেশী পর্যন্ত রেঞ্জ নিতে পারেন । For Loop এর আরও ব্যবহার আমরা দেখব পরের পর্বে । তখন বিষয় টা আরও ক্লিয়ার হবে ।


Boolean expressions
 : আমরা আমাদের ইংরেী পরীক্ষায় যে ট্রু ফলস্ লিখেছি Boolean expressions টা ঠিক ওই রকমই । উদাহরণ দিয়ে বিষয় টা ক্লিয়ার করছি । সবাই নিচের কোডটা লিখুন ।

a = 6
b = 7
print(a == 6)
print(a == 7)
print(b == 7)
print(b == 6)
print(a == 6 and b == 7)
print(a == 7 and b == 7)
print(a == 6 or b == 6)
print(a == 5 or b == 6)

দেখুন এটা রান করানোর ফলে ফলা ফল টা এসেছে এমন :

True
False
True
False
True
False
True
False

এবার বিষটা বুঝুন ।প্রথমে আমরা a এর মান 6 ও b এর মান দিয়েছি 7 । এরপর a == 6 লেখার ফলে পাইথন আমাদের True রিটার্ন করেছে আর a == 7 লেখার ফলে রিটার্ন করেছে False । কারণ যেটা আগের মানের সাথে মিলেছে সেটা তো সত্য হবেই । b এর মানের ক্ষেত্রেও ওকই ব্যাপার । যা হোক এ নিয়ে আমাদের বেশী মাথা ঘামানোর দরকার নেই । আমাদের মাথা ঘামানোর বিষয় হল পরের লাইন হথে । পপরের লরইনে দেখুন আমরা a == 6 and b == 7 লেখার ফলে পাইথন আমাদের Trueরিটার্ন করেছে । কিন্তু পরের লাইনে শুধু a এর মানটা ভুল থাকার কারণে পাইথন আমাদের False রিটার্ণ করেছে । এর কারণ হল কোন এ ধরনের বাক্যের মধ্যে যদি and থাকে তবে বাক্যটি তখনই সত্য হবে যখন বাক্যের দুটি কথাই সত্য হবে । যেকোন একটি ভুল হলে পুরো বাক্যটি ভুল প্রমাণিত হবে । যদি ১ম টি ভুল হয় তবে পাইথন পরের অংশটি আর দেখবে না । আবার পরে আমরা or এর ক্ষেত্রে দেখতে পাই যে ঠিক তার উল্টো । এক্ষেত্রে যেকোন একটি সঠিক হলে বাক্যটি সঠিক হবে । বাক্যটিকে ভুল প্রমান করতে গেলে ২ টি অংশই ভুল হতে হবে । এর ১ম অংশ যদি সঠিক হয় তবে পাইথন এর পরের অংশ টুকু আর দেখবে না । ১ম অংশ ভুল হলে পরের অংশ ঠিক আছে কিনা তা চেক করবে । ঠিক থাকলে বাক্যটি সত্য হবে । আর ২য় অংশটি ভুল হলে পুরো বাক্যটি ভুল হবে । আসুন আমরা Boolean expressions এর মাধ্যমে একটি পাসওয়ার্ড ভেরিফিকেশন এর পো্রগ্রাম তৈরী করি । সবাই নিচের কোডটি লিখুন :

name = input("What is your name? ")
password = input("What is the password? ")
if name == "Arpita" and password == "Friday":
    print("Welcome Arpita")
elif name == "Prodip" and password == "Sunday":
    print("Welcome Prodip")
elif name == "Ripon" or password == "Monday":
    print("Welcome Ripon")
else:
    print("I don't know you.")

দেখুন এখানে আমরা প্রথমে name ও password ইনপুট নিয়েছি এবং পাইথনকে বলেছি যদি name হয় Arpita এবং password হয় Friday তবে Welcome Arpita লেখাটি প্রিন্ট কর । ২য় ক্ষেত্রে Prodip এর ক্ষেত্রেও তাই বলেছি । এখানে name ও password যে কোন একটি গড়বড় হলেই পাইথন I don’t know you লেখাটি প্রিন্ট করবে । কিন্তু ৩য় ক্ষেত্রে আমরা বলেছি যে যদি name হয় Ripon অথবা password হয় Monday তবে Welcome Ripon লেখাটি প্রিন্ট করো । অর্থাত এক্ষেত্রে পাইথন name বা password যেকোন একটি ঠিক থাকলেই Welcome Ripon লেখাটি প্রিন্ট করবে । ২ টি ঠিক থাকার কোন প্রয়োজন নেই । এই দুটির আসল ব্যবহার জানতে গেলে আপনাকে আরেকটু এগোতে হবে । পরের পর্বে আশা করি বিষয় টা আপনাদের কাছে আরও ক্লিয়ার হবে ।

আজ এই পর্যন্তই । পরের পর্বে এদের বিস্তারিত ব্যবহার নিয়ে আলোচনা করব । আপনারা এগুলো প্রাকটিস করতে থাকুন । আর বুঝতে না পারলে অবশ্যই বলবেন । যথাসাধ্য বোঝানোর চেষ্টা করব । ধন্যবাদ ।

Please comment Here (ভাল লাগলে কমেন্ট করুন)