পাইথনে কন্ট্রোল স্টেটমেন্টস প্রোগ্রামের প্রবাহ নিয়ন্ত্রণ করতে ব্যবহৃত হয়। এগুলো ব্যবহার করে নির্দিষ্ট শর্তে কোড ব্লক চালানো, পুনরাবৃত্তি করা বা লুপ থেকে বেরিয়ে আসা সম্ভব। কন্ট্রোল স্টেটমেন্টের প্রধান তিনটি ধরন হলো:
- কন্ডিশনাল স্টেটমেন্টস (Conditional Statements)
- লুপিং স্টেটমেন্টস (Looping Statements)
- জাম্প স্টেটমেন্টস (Jump Statements)
১. কন্ডিশনাল স্টেটমেন্টস (Conditional Statements):
কন্ডিশনাল স্টেটমেন্টস শর্তের ভিত্তিতে কোড ব্লকের কার্যক্রম নিয়ন্ত্রণ করে। পাইথনে প্রধান কন্ডিশনাল স্টেটমেন্টগুলো হলো if, elif, এবং else।
উদাহরণ:
age = 18
if age >= 18:
print("You are eligible to vote.")
elif age >= 16:
print("You can vote in school elections.")
else:
print("You are not eligible to vote.")
ব্যাখ্যা:
ifশর্তটি যাচাই করে। যদি সত্য হয়, তবে ওই কোড ব্লক চালানো হবে।elifমানে "else if"। যদি প্রথম শর্ত মিথ্যা হয় তবেelifশর্ত যাচাই করা হয়।elseযদি পূর্বের সব শর্ত মিথ্যা হয় তবে চালানো হয়।
২. লুপিং স্টেটমেন্টস (Looping Statements):
লুপিং স্টেটমেন্ট একটি নির্দিষ্ট কোড ব্লক বারবার চালানোর জন্য ব্যবহৃত হয়। পাইথনে মূলত দুই ধরণের লুপ রয়েছে: for এবং while লুপ।
for লুপ:
নির্দিষ্ট পরিমাণ বার কোড ব্লক চালানোর জন্য for লুপ ব্যবহৃত হয়।
উদাহরণ:
for i in range(5):
print("Hello, World!")
while লুপ:
যতক্ষণ পর্যন্ত শর্ত সত্য থাকে, ততক্ষণ while লুপ কোড ব্লক চালায়।
উদাহরণ:
count = 0
while count < 5:
print("Count:", count)
count += 1
৩. জাম্প স্টেটমেন্টস (Jump Statements):
জাম্প স্টেটমেন্ট লুপ বা কন্ডিশনাল ব্লকের প্রবাহ নিয়ন্ত্রণ করতে ব্যবহৃত হয়। পাইথনে তিন ধরনের জাম্প স্টেটমেন্ট রয়েছে: break, continue, এবং pass।
break স্টেটমেন্ট:
break স্টেটমেন্ট লুপ থেকে বেরিয়ে আসতে ব্যবহৃত হয়, অর্থাৎ লুপকে বাধ্য করে শেষ করতে।
উদাহরণ:
for i in range(5):
if i == 3:
break
print(i)
# আউটপুট: 0, 1, 2
continue স্টেটমেন্ট:
continue স্টেটমেন্ট বর্তমান ইটারেশন বাদ দিয়ে লুপের পরবর্তী ইটারেশনে চলে যায়।
উদাহরণ:
for i in range(5):
if i == 2:
continue
print(i)
# আউটপুট: 0, 1, 3, 4
pass স্টেটমেন্ট:
pass স্টেটমেন্ট একটি খালি স্টেটমেন্ট যা কোনো কাজ করে না। এটি প্রায়শই তখন ব্যবহৃত হয় যখন কোডটি পরে লেখা হবে বলে নির্দিষ্ট অংশটি ফাঁকা রাখা হয়।
উদাহরণ:
for i in range(5):
if i == 2:
pass
print(i)
# আউটপুট: 0, 1, 2, 3, 4
সংক্ষেপে:
- কন্ডিশনাল স্টেটমেন্টস: শর্তের উপর ভিত্তি করে নির্দিষ্ট কোড ব্লক চালায়।
- লুপিং স্টেটমেন্টস: নির্দিষ্ট সংখ্যক বা শর্ত পর্যন্ত কোড ব্লক পুনরাবৃত্তি করে।
- জাম্প স্টেটমেন্টস: লুপ বা কোড ব্লকের নির্দিষ্ট অংশ বাদ বা বাতিল করার জন্য ব্যবহৃত হয়।
এই কন্ট্রোল স্টেটমেন্টগুলো প্রোগ্রামের প্রবাহ নিয়ন্ত্রণ করে এবং কোডিং আরও কার্যকর ও মজবুত করতে সহায়ক।
পাইথনে শর্ত ভিত্তিক স্টেটমেন্ট যেমন if, if-else, এবং elif ব্যবহার করে বিভিন্ন শর্ত অনুযায়ী কোডের অংশগুলো চালানো যায়। এগুলো প্রোগ্রামে বিভিন্ন লজিক তৈরি করতে সহায়ক। নিচে প্রতিটি শর্ত ভিত্তিক স্টেটমেন্ট এবং তাদের উদাহরণ দেওয়া হলো।
১. if স্টেটমেন্ট
if স্টেটমেন্ট ব্যবহার করে একটি শর্ত দেওয়া হয়। যদি শর্তটি সত্য হয়, তাহলে if ব্লকের কোড চালানো হয়।
উদাহরণ:
age = 18
if age >= 18:
print("You are eligible to vote.")
এখানে, age ১৮ বা তার বেশি হলে "You are eligible to vote." মুদ্রণ হবে।
২. if-else স্টেটমেন্ট
if-else স্টেটমেন্টের মাধ্যমে যদি if এর শর্ত মিথ্যা হয়, তাহলে else ব্লকের কোড চালানো হয়।
উদাহরণ:
age = 16
if age >= 18:
print("You are eligible to vote.")
else:
print("You are not eligible to vote.")
এখানে, age ১৮ এর কম হলে "You are not eligible to vote." মুদ্রণ হবে।
৩. elif স্টেটমেন্ট
elif (else if) স্টেটমেন্টের মাধ্যমে একাধিক শর্ত পরীক্ষা করা যায়। if এর শর্ত মিথ্যা হলে elif এর শর্ত পরীক্ষা করা হয়। একটি শর্ত সত্য হলে ওই ব্লকের কোড চালানো হয় এবং পরবর্তী শর্তগুলো পরীক্ষা করা হয় না।
উদাহরণ:
marks = 85
if marks >= 90:
print("Grade: A+")
elif marks >= 80:
print("Grade: A")
elif marks >= 70:
print("Grade: B")
else:
print("Grade: C")
এখানে, যদি marks ৮০ থেকে ৮৯ এর মধ্যে থাকে, তাহলে "Grade: A" মুদ্রণ হবে এবং বাকি শর্তগুলো আর পরীক্ষা করা হবে না।
উদাহরণ সমন্বিত কোড
number = 0
if number > 0:
print("The number is positive.")
elif number < 0:
print("The number is negative.")
else:
print("The number is zero.")
এখানে, যদি number ধনাত্মক হয়, তাহলে "The number is positive." মুদ্রণ হবে, নতুবা ঋণাত্মক হলে "The number is negative." এবং যদি ০ হয়, তাহলে "The number is zero." মুদ্রণ হবে।
সারসংক্ষেপ
if, if-else, এবং elif স্টেটমেন্টগুলি শর্ত অনুযায়ী বিভিন্ন কোড ব্লক চালাতে ব্যবহৃত হয়। এদের সাহায্যে প্রোগ্রামে বিভিন্ন লজিক তৈরি করে কাজের সঠিক প্রবাহ নিশ্চিত করা যায়।
লুপিং স্টেটমেন্টস প্রোগ্রামের মধ্যে একটি নির্দিষ্ট কোড ব্লক বারবার চালাতে ব্যবহৃত হয়। পাইথনে লুপিং স্টেটমেন্টের দুটি প্রধান ধরণ রয়েছে: for লুপ এবং while লুপ।
১. for লুপ:
for লুপ একটি নির্দিষ্ট পরিমাণ বার কোড চালানোর জন্য ব্যবহৃত হয়, অথবা একটি নির্দিষ্ট ইটারেবল অবজেক্ট (যেমন লিস্ট, টাপল, রেঞ্জ) এর প্রতিটি উপাদান নিয়ে কাজ করে।
সাধারণ সিনট্যাক্স:
for variable in iterable:
# কোড ব্লক
উদাহরণ ১: ১ থেকে ৫ পর্যন্ত সংখ্যাগুলি প্রিন্ট করা
for i in range(1, 6):
print(i)
আউটপুট:
1
2
3
4
5
ব্যাখ্যা:
range(1, 6)১ থেকে ৫ পর্যন্ত সংখ্যা তৈরি করে (৬ বাদ দিয়ে)।forলুপ প্রতিটি সংখ্যার জন্যprint(i)কোডটি চালায়।
উদাহরণ ২: লিস্টের প্রতিটি উপাদান প্রিন্ট করা
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
আউটপুট:
apple
banana
cherry
২. while লুপ:
while লুপ ব্যবহার করা হয় যখন শর্তটি সত্য থাকে এবং শর্ত মিথ্যা না হওয়া পর্যন্ত এটি চলতে থাকে। তাই এই লুপটি সাধারণত নির্দিষ্ট শর্ত পূর্ণ না হওয়া পর্যন্ত চলতে থাকে।
সাধারণ সিনট্যাক্স:
while condition:
# কোড ব্লক
উদাহরণ ১: ১ থেকে ৫ পর্যন্ত সংখ্যাগুলি প্রিন্ট করা
count = 1
while count <= 5:
print(count)
count += 1
আউটপুট:
1
2
3
4
5
ব্যাখ্যা:
count = 1দিয়ে লুপ শুরু হয় এবংcount <= 5শর্তটি পরীক্ষা করা হয়।- প্রতিবার
countএর মান ১ করে বাড়ানো হয়, ফলে লুপটি পাঁচবার চালায় এবংcount > 5হলে লুপ শেষ হয়।
উদাহরণ ২: ইউজার ইনপুট নেয়া যতক্ষণ পর্যন্ত "stop" না বলা হয়
user_input = ""
while user_input != "stop":
user_input = input("Enter something (type 'stop' to exit): ")
print("You entered:", user_input)
ব্যাখ্যা:
- এখানে
whileলুপটি চালানো হবে যতক্ষণ না পর্যন্তuser_inputএর মান "stop" হয়। - ইউজার "stop" ইনপুট দিলে লুপ বন্ধ হয়ে যাবে।
লুপ ব্রেকিং এবং স্কিপিং (Break and Continue):
break: লুপের মাঝখানে break স্টেটমেন্ট ব্যবহার করলে লুপটি সম্পূর্ণভাবে বন্ধ হয়ে যায়।
উদাহরণ:
for i in range(1, 10):
if i == 5:
break
print(i)
আউটপুট:
1
2
3
4
continue: লুপের একটি নির্দিষ্ট ইটারেশন বাদ দিতে continue ব্যবহার করা হয় এবং লুপের পরবর্তী ইটারেশনে চলে যায়।
উদাহরণ:
for i in range(1, 6):
if i == 3:
continue
print(i)
আউটপুট:
1
2
4
5
সংক্ষেপে:
forলুপ: নির্দিষ্ট সংখ্যক বার বা ইটারেবলের প্রতিটি উপাদানের জন্য কোড চালায়।whileলুপ: নির্দিষ্ট শর্ত সত্য থাকলে কোড চালায়।breakএবংcontinue:breakদিয়ে লুপ সম্পূর্ণ বন্ধ করা যায় এবংcontinueদিয়ে নির্দিষ্ট ইটারেশন স্কিপ করা যায়।
এই লুপগুলো প্রোগ্রামিংয়ে পুনরাবৃত্তিমূলক কাজ করতে গুরুত্বপূর্ণ ভূমিকা পালন করে।
ব্রেক (break), কন্টিনিউ (continue) এবং পাস (pass) স্টেটমেন্ট পাইথনে কন্ট্রোল স্টেটমেন্ট হিসেবে কাজ করে। এগুলো লুপের বা কন্ডিশনাল স্টেটমেন্টের প্রবাহ নিয়ন্ত্রণ করে।
১. break স্টেটমেন্ট:
break স্টেটমেন্ট ব্যবহার করলে লুপ চলাকালীন অবস্থায় তাৎক্ষণিকভাবে লুপটি বন্ধ হয়ে যায়। এটি সাধারণত একটি নির্দিষ্ট শর্ত পূরণের পর লুপ থেকে বেরিয়ে আসতে ব্যবহৃত হয়।
উদাহরণ:
python
Copy code
for i in range(1, 10):
if i == 5:
break
print(i)
আউটপুট:
1
2
3
4
ব্যাখ্যা:
- লুপটি
iএর মান ৫ হওয়ার পরbreakস্টেটমেন্টে পৌঁছে এবং তাৎক্ষণিকভাবে লুপ থেকে বেরিয়ে আসে। ফলে ৫ এর পরে আর কোনো সংখ্যা প্রিন্ট হয় না।
২. continue স্টেটমেন্ট:
continue স্টেটমেন্ট লুপের বর্তমান ইটারেশনকে বাদ দিয়ে পরবর্তী ইটারেশনে চলে যায়। এটি সাধারণত যখন কোনো নির্দিষ্ট শর্ত পূরণ হয় তখন নির্দিষ্ট ইটারেশন স্কিপ করতে ব্যবহৃত হয়।
উদাহরণ:
python
Copy code
for i in range(1, 6):
if i == 3:
continue
print(i)
আউটপুট:
1
2
4
5
ব্যাখ্যা:
- এখানে
iএর মান ৩ হলেcontinueস্টেটমেন্টে পৌঁছে বর্তমান ইটারেশন স্কিপ করে এবং পরবর্তী ইটারেশনে চলে যায়। তাই ৩ প্রিন্ট হয় না।
৩. pass স্টেটমেন্ট:
pass স্টেটমেন্ট কোনো কাজ না করে খালি থাকে, এটি শুধুমাত্র একটি প্লেসহোল্ডার হিসেবে কাজ করে। যখন কোড ব্লক খালি রাখা প্রয়োজন, কিন্তু তা লিখতে হবে এমন পরিস্থিতিতে pass ব্যবহৃত হয়। এটি কোনো কাজ করে না, তবে এর উপস্থিতি কোডের গঠন বজায় রাখে।
উদাহরণ:
for i in range(1, 6):
if i == 3:
pass
print(i)
আউটপুট:
1
2
3
4
5
ব্যাখ্যা:
- এখানে
i == 3শর্ত পূরণের পরpassস্টেটমেন্টে পৌঁছায়, কিন্তুpassকোনো কাজ না করে পরবর্তী ইটারেশনে চলে যায়। তাই এটি শুধুমাত্র একটি প্লেসহোল্ডার হিসেবে কাজ করে।
সংক্ষেপে:
break: লুপ থেকে বেরিয়ে আসে এবং লুপ বন্ধ করে দেয়।continue: বর্তমান ইটারেশন বাদ দিয়ে পরবর্তী ইটারেশনে চলে যায়।pass: কোনো কাজ করে না, শুধুমাত্র কোডের গঠন বজায় রাখে।
এই স্টেটমেন্টগুলো প্রোগ্রামের প্রবাহ নিয়ন্ত্রণে গুরুত্বপূর্ণ ভূমিকা পালন করে।
Read more