Vivasoft-logo

২. if – else স্টেটমেন্ট

if – else স্টেটমেন্ট আমাদের এক বা একাধিক শর্তের উপর ভিত্তি করে ভিন্ন ভিন্ন ব্লক এর কোড এক্সিকিউট করার ক্ষমতা দিয়ে থাকে।যখনই আমাদের লজিকে কোন নির্দিষ্ট শর্ত থাকবে যেটা পূরণ হলে আমাদের কিছু নির্দিষ্ট কাজ করতে হবে নতুবা অন্য কিছু কাজ করতে হবে তখনই আমাদের if – else স্টেটমেন্ট নিয়ে কাজ করার দরকার হয়। শর্ত বা কন্ডিশন হলো একটি এক্সপ্রেশন যা true বা false (boolean) হতে পারে। if কীওয়ার্ড এর পর প্যারেন্থেসিস () এর ভিতর একটি শর্ত বা কন্ডিশন দিতে হয়। যদি কন্ডিশনটি সত্য হয়, তবে if ব্লকের ভিতরের কোডটি কার্যকর হবে। যদি শর্তটি মিথ্যা হয় তখন আর এই ব্লক এর কোড কার্যকর হবে না, বরং যদি if এর বিপরীত একটি else ব্লক থাকে তাহলে else ব্লকের ভিতরের কোডটি কার্যকর হবে। কন্ডিশন টি অবশ্যই বুলিয়ান রিটার্ন করতে হবে। প্যারেন্থেসিস এর ভিতর boolean ডাটা টাইপ ছাড়া অন্য কোন ডাটা টাইপ দেয়া যাবে না, কম্পাইলেশন এরর দেখাবে। নিচের কোড স্যাম্পল টি লক্ষ্য করি:

if (শর্ত) {
// শর্ত সত্যি হলে এই কোডটি চলবে
} else {
// শর্ত মিথ্যা হলে এই কোডটি চলবে
}
 

এইবার যেহেতু if – else স্টেটমেন্ট কী সেটা জানলাম চলুন if – else স্টেটমেন্ট এর কিছু ভেরিয়েশন এবং কীভাবে ব্যবহার করবো তা জেনে নেই।

২.১. if – else if – else

ভেবে দেখুন তো, যদি আমার এমন কোন পরিস্থিতিতে পরি যেখানে আমাদের কয়েকটি নির্দিষ্ট শর্ত বিবেচনা করতে হবে? তখন আমরা কী করবো? তখন আমরা if -else if -else ব্যবহার করে আমাদের প্রতিটা শর্ত নিরীক্ষণ করবো এবং শর্ত পূরণ সাপেক্ষে কোড এর ব্লক ডিক্লেয়ার করে দিব। কীভাবে? চলুন নিচের কোড স্যাম্পল টি দেখি:

if (শর্ত ১) {
// শর্ত ১ সত্য হলে এই কোডটি চলবে
} else if(শর্ত ২) {
// শর্ত ২ সত্য হলে এই কোডটি চলবে
} else if(শর্ত ৩) {
// শর্ত ৩ সত্য হলে এই কোডটি চলবে
} else if(শর্ত ৪) {
// শর্ত ৪ সত্য হলে এই কোডটি চলবে
} else {
// কোনটি ই সত্য না হলে এই কোডটি চলবে
}
 

এই উদাহরণটি দেখুন:

void main() {
int সংখ্যা = 10;

if (সংখ্যা > 10) {
print('সংখ্যাটি ১০ এর চেয়ে বড়');
} else if (সংখ্যা < 10) {
print('সংখ্যাটি ১০ এর চেয়ে ছোট');
} else {
print('সংখ্যাটি ১০');
}
}
 
  1. এখানে, প্রথমে শর্ত চেক হচ্ছে যে সংখ্যাটি ১০ এর চেয়ে বড় কিনা।
  2. যদি এই শর্ত সত্য হয়, তাহলে এই শর্তের অনুযায়ী কোড চলবে।
  3. যদি সংখ্যাটি ১০ এর চেয়ে ছোট হয়, তাহলে দ্বিতীয় শর্ত চেক হবে এবং যদি তা সত্য হয়, তাহলে দ্বিতীয় শর্তের অনুযায়ী কোড চলবে।
  4. যদি কোনও একটি শর্তও সত্য না হয়, তাহলে এই ধাপগুলো চলার পর থাকা else ব্লকের কোড চলবে।

২.২. নেস্টেড if - else

ডার্টে একক if স্টেটমেন্ট একই কোড বেসে থাকতে পারে। এছাড়া, কোডে একাধিক if-else if-else নেস্ট করা যায়, অর্থাৎ একটি if স্টেটমেন্টের ভিতরে অন্য একটি if স্টেটমেন্ট থাকতে পারে। এছাড়া, else এবং else if ব্লকগুলির আগে একটি if স্টেটমেন্ট অবশ্যই থাকতে হবে। চলুন একটি উদাহরণ দেখে নেয়া যাক:

void main() {
int সংখ্যা = 15;

if (সংখ্যা > 10) {
print('সংখ্যাটি ১০ এর চেয়ে বড়');

    if (সংখ্যা == 15) {
      print('সংখ্যাটি ১৫');
    }
} else if (সংখ্যা < 10) {
print('সংখ্যাটি ১০ এর চেয়ে ছোট');
} else {
print('সংখ্যাটি ১০');
}
}
 
  • এখানে প্রথমে চেক হচ্ছে যে সংখ্যাটি ১০ এর চেয়ে বড় কিনা। যদি হয়, তাহলে এই শর্তের অধিনস্ত কোড চলবে। এবং এখানে আরেকটি if স্টেটমেন্ট আছে যেটির ভিতরে চেক হচ্ছে যে সংখ্যাটি ১৫ কিনা।
  • যদি উপরের শর্তগুলি সত্য না হয়, তাদের পরে else if এবং else ব্লক গুলির চেক হবে।