Class - XII: SEMESTER – III: Unit – 1: Python Programming: Section 7: Conditional statements
Python Programming: Conditional Statements
১. Conditional Statement কী?
Programming-এ Conditional Statement হলো এমন একটি control structure যার মাধ্যমে program কোনো condition বা শর্ত পরীক্ষা করে সিদ্ধান্ত নিতে পারে। বাস্তব জীবনে আমরা প্রতিদিন condition-এর ভিত্তিতে decision নিই। যেমন, যদি বৃষ্টি হয় তাহলে ছাতা নিয়ে বের হব, যদি marks 40-এর বেশি হয় তাহলে pass, যদি password সঠিক হয় তাহলে login হবে। ঠিক একইভাবে Python program-ও condition check করে নির্দিষ্ট block execute করতে পারে।
Conditional statements program-কে intelligent করে তোলে, কারণ এর মাধ্যমে program একই input-এর জন্য এক রকম এবং ভিন্ন input-এর জন্য ভিন্ন output দিতে পারে।
Python-এ conditional statement সাধারণত if, if-else, if-elif-else এবং nested conditions-এর মাধ্যমে লেখা হয়।
২. Conditional Statement কেন দরকার?
যদি program সবসময় একের পর এক line execute করত, তাহলে program শুধুমাত্র fixed কাজ করতে পারত। কিন্তু বাস্তব software-এ decision making দরকার হয়। উদাহরণস্বরূপ, একটি banking application balance check করে withdrawal allow করে, একটি exam system marks অনুযায়ী grade দেয়, একটি shopping app cart value অনুযায়ী discount দেয়।
- User input অনুযায়ী decision নেওয়ার জন্য
- Different condition অনুযায়ী different output দেখানোর জন্য
- Validation করার জন্য, যেমন age, password, marks, amount check করা
- Real-world logic implement করার জন্য
- Program flow control করার জন্য
৩. Python-এ Condition কীভাবে কাজ করে?
Python-এ condition সাধারণত এমন expression যা True অথবা False result দেয়।
এই result-এর উপর ভিত্তি করে Python সিদ্ধান্ত নেয় কোন block execute হবে।
Comparison Operators
| Operator | অর্থ | উদাহরণ |
|---|---|---|
== |
সমান কিনা পরীক্ষা করে | x == 10 |
!= |
সমান নয় কিনা পরীক্ষা করে | x != 10 |
> |
বড় কিনা পরীক্ষা করে | x > 10 |
< |
ছোট কিনা পরীক্ষা করে | x < 10 |
>= |
বড় বা সমান কিনা | x >= 10 |
<= |
ছোট বা সমান কিনা | x <= 10 |
Logical Operators
| Operator | কাজ | উদাহরণ |
|---|---|---|
and |
দুইটি condition true হলে result true | age >= 18 and nationality == "Indian" |
or |
যেকোনো একটি condition true হলে result true | marks >= 80 or grade == "A" |
not |
condition-এর result উল্টো করে | not is_failed |
৪. if Statement
if statement ব্যবহার করা হয় যখন কোনো condition true হলে একটি নির্দিষ্ট code block execute করতে হয়।
যদি condition false হয়, তাহলে সেই block execute হবে না।
Syntax:
if condition:
statement
Example:
age = 20
if age >= 18:
print("আপনি ভোট দিতে পারবেন")
এখানে age >= 18 condition true, তাই message print হবে।
যদি age 18-এর কম হতো, তাহলে কোনো output আসত না।
Flowchart: if Statement
True?
৫. if-else Statement
if-else statement তখন ব্যবহার করা হয় যখন condition true হলে এক ধরনের কাজ এবং condition false হলে অন্য ধরনের কাজ করতে হয়।
অর্থাৎ program-এর কাছে দুইটি possible path থাকে। একটি true path, অন্যটি false path।
Syntax:
if condition:
statement_1
else:
statement_2
Example: Even বা Odd Check
number = int(input("একটি সংখ্যা লিখুন: "))
if number % 2 == 0:
print("সংখ্যাটি Even")
else:
print("সংখ্যাটি Odd")
এখানে number যদি 2 দিয়ে নিঃশেষে বিভাজ্য হয়, তাহলে even print হবে। অন্যথায় odd print হবে।
Flowchart: if-else Statement
৬. if-elif-else Statement
যখন একাধিক condition check করতে হয়, তখন if-elif-else statement ব্যবহার করা হয়।
Python প্রথমে if condition check করে। যদি false হয়, তাহলে পরের elif condition check করে।
কোনো condition true হলে সেই block execute হয় এবং বাকিগুলো skip হয়। যদি কোনো condition true না হয়, তাহলে else block execute হয়।
Syntax:
if condition1:
statement_1
elif condition2:
statement_2
elif condition3:
statement_3
else:
default_statement
Example: Grade Calculation
marks = int(input("আপনার marks লিখুন: "))
if marks >= 80:
print("Grade: A+")
elif marks >= 70:
print("Grade: A")
elif marks >= 60:
print("Grade: B")
elif marks >= 50:
print("Grade: C")
else:
print("Fail")
এখানে marks অনুযায়ী grade নির্ধারণ করা হচ্ছে। এই ধরনের logic exam result system, ranking system এবং eligibility checking-এর জন্য খুব useful।
৭. Indentation-এর গুরুত্ব
Python-এ conditional block বোঝানোর জন্য curly braces ব্যবহার করা হয় না। Instead, indentation ব্যবহার করা হয়।
if, else, elif-এর ভিতরের statements অবশ্যই indentation দিয়ে লিখতে হবে।
সাধারণত ৪টি space ব্যবহার করা recommended।
Correct:
if True:
print("This is inside if block")
Wrong:
if True:
print("This will cause IndentationError")
IndentationError হতে পারে।
তাই conditional statements লেখার সময় indentation ঠিক রাখা খুব জরুরি।
৮. Simple Program ১: Absolute Value বের করা
Absolute value মানে কোনো সংখ্যার positive value। যেমন, -10-এর absolute value হলো 10,
আর 15-এর absolute value হলো 15।
Python-এ built-in abs() function আছে, কিন্তু conditional statement শেখার জন্য আমরা manually absolute value বের করব।
Program:
number = int(input("একটি সংখ্যা লিখুন: "))
if number < 0:
absolute_value = -number
else:
absolute_value = number
print("Absolute value হলো:", absolute_value)
Explanation:
- User থেকে একটি number input নেওয়া হয়েছে।
- যদি number 0-এর ছোট হয়, তাহলে তাকে negative থেকে positive করার জন্য
-numberকরা হয়েছে। - যদি number positive বা zero হয়, তাহলে number unchanged রাখা হয়েছে।
- শেষে absolute value print করা হয়েছে।
Flowchart: Absolute Value
৯. Simple Program ২: তিনটি সংখ্যা Sort করা
তিনটি সংখ্যা ছোট থেকে বড় ক্রমে সাজানো conditional statements-এর একটি খুব ভালো practical example। এখানে আমরা তিনটি number compare করে ascending order-এ print করব।
Program: Nested if ব্যবহার করে
a = int(input("প্রথম সংখ্যা লিখুন: "))
b = int(input("দ্বিতীয় সংখ্যা লিখুন: "))
c = int(input("তৃতীয় সংখ্যা লিখুন: "))
if a
Explanation:
এই program-এ প্রথমে check করা হয়েছে কোন সংখ্যাটি সবচেয়ে ছোট।
যদি a সবচেয়ে ছোট হয়, তাহলে এরপর b এবং c-এর মধ্যে ছোট-বড় compare করা হয়েছে।
একইভাবে যদি b ছোট হয়, তাহলে a এবং c compare করা হয়েছে।
আর যদি a বা b কেউ smallest না হয়, তাহলে c smallest ধরে বাকিগুলো compare করা হয়েছে।
sorted([a, b, c]) ব্যবহার করে sort করা যায়,
কিন্তু conditional statement শেখার জন্য manual comparison বেশি useful।
Short Alternative Program:
a = int(input("প্রথম সংখ্যা লিখুন: "))
b = int(input("দ্বিতীয় সংখ্যা লিখুন: "))
c = int(input("তৃতীয় সংখ্যা লিখুন: "))
numbers = [a, b, c]
numbers.sort()
print("Ascending order:", numbers)
১০. Simple Program ৩: একটি সংখ্যা Divisible কিনা পরীক্ষা করা
কোনো সংখ্যা অন্য একটি সংখ্যা দিয়ে নিঃশেষে ভাগ যায় কিনা তা পরীক্ষা করতে modulus operator % ব্যবহার করা হয়।
যদি a % b == 0 হয়, তাহলে বুঝতে হবে a, b দ্বারা divisible।
Program: Divisibility Check
number = int(input("সংখ্যা লিখুন: "))
divisor = int(input("ভাজক লিখুন: "))
if divisor == 0:
print("Zero দিয়ে ভাগ করা যায় না")
elif number % divisor == 0:
print(number, "সংখ্যাটি", divisor, "দিয়ে নিঃশেষে বিভাজ্য")
else:
print(number, "সংখ্যাটি", divisor, "দিয়ে নিঃশেষে বিভাজ্য নয়")
Explanation:
- User থেকে number এবং divisor input নেওয়া হয়েছে।
- প্রথমে check করা হয়েছে divisor zero কিনা, কারণ zero দিয়ে division করা যায় না।
- তারপর modulus operator ব্যবহার করে remainder check করা হয়েছে।
- যদি remainder 0 হয়, তাহলে number divisible। অন্যথায় divisible নয়।
Flowchart: Divisibility Check
১১. Common Mistakes
- Colon ভুলে যাওয়া:
if,elif,else-এর শেষে colon:দিতে হয়। - Indentation ভুল করা: block-এর ভিতরের statements indent না করলে error হবে।
=এবং==confuse করা:=assignment,==comparison।- Condition order ভুল করা: grade calculation-এর মতো ক্ষেত্রে condition order ঠিক না হলে wrong output আসতে পারে।
- Zero division check না করা: divisibility program-এ divisor zero হলে runtime error হতে পারে।
১২. if, if-else এবং if-elif-else-এর তুলনা
| Statement | কখন ব্যবহার হয় | Example Use |
|---|---|---|
if |
শুধু condition true হলে কাজ করতে চাইলে | Age 18 হলে voting message |
if-else |
True এবং False দুই অবস্থার জন্য আলাদা কাজ করতে চাইলে | Even/Odd check |
if-elif-else |
একাধিক condition check করতে চাইলে | Grade calculation |
| Nested if | এক condition-এর ভিতরে আরেক condition check করতে চাইলে | Username এবং password validation |
উপসংহার
Conditional statements Python programming-এর একটি fundamental concept।
এর মাধ্যমে program decision নিতে পারে এবং different situation অনুযায়ী different output দিতে পারে।
if statement simple condition check করে, if-else statement true/false দুই path handle করে,
আর if-elif-else একাধিক condition manage করতে সাহায্য করে।
Absolute value বের করা, তিনটি সংখ্যা sort করা, এবং divisibility check করার মতো simple programs conditional statement-এর ব্যবহার ভালোভাবে বোঝায়। Python-এ conditional logic ভালোভাবে আয়ত্ত করলে আপনি grade calculator, login system, banking validation, shopping discount system, eligibility checker এবং আরও অনেক real-world application তৈরি করতে পারবেন।