if1. বিবৃতির ক্রম

কখনও কখনও একটি প্রোগ্রামকে একটি ভেরিয়েবলের মান বা একটি এক্সপ্রেশনের মানের উপর নির্ভর করে অনেকগুলি বিভিন্ন ক্রিয়া সম্পাদন করতে হয়।

ধরা যাক আমাদের কাজটি এরকম কিছু:

  • যদি তাপমাত্রা 20ডিগ্রির চেয়ে বেশি হয় তবে একটি শার্ট পরুন
  • যদি তাপমাত্রা 10ডিগ্রির চেয়ে বেশি এবং (বা সমান) এর চেয়ে কম হয় 20, তবে একটি সোয়েটার পরুন
  • যদি তাপমাত্রা 0ডিগ্রির চেয়ে বেশি হয় এবং (বা সমান) এর চেয়ে কম হয় 10তবে রেইনকোট পরুন
  • যদি তাপমাত্রা 0ডিগ্রির কম হয় তবে একটি কোট পরুন।

কোডে এটি কীভাবে উপস্থাপন করা যেতে পারে তা এখানে:

int temperature = 9;

if (temperature > 20)
   System.out.println("put on a shirt");
else // Here the temperature is less than (or equal to) 20
{
   if (temperature > 10)
      System.out.println("put on a sweater");
   else // Here the temperature is less than (or equal to) 10
   {
      if (temperature > 0)
         System.out.println("put on a raincoat");
      else // Here the temperature is less than 0
         System.out.println("put on a coat");
   }
}

If-elseবিবৃতি একে অপরের মধ্যে নেস্ট করা যেতে পারে. এটি একটি প্রোগ্রামে বরং জটিল যুক্তি প্রয়োগ করা সম্ভব করে তোলে।

কিন্তু উপরের উদাহরণটিও আকর্ষণীয় যে আমরা কোঁকড়া ধনুর্বন্ধনী বাদ দিয়ে কোডটিকে একটু সহজ করতে পারি:

int temperature = 9;

if (temperature > 20)
   System.out.println("put on a shirt");
else // Here the temperature is less than (or equal to) 20
   if (temperature > 10)
      System.out.println("put on a sweater");
   else // Here the temperature is less than (or equal to) 10
      if (temperature > 0)
         System.out.println("put on a raincoat");
      else // Here the temperature is less than 0
         System.out.println("put on a coat");

যাইহোক, প্রোগ্রামাররা সাধারণত এই গঠনটি একটু ভিন্নভাবে লেখে:

int temperature = 9;

if (temperature > 20)
   System.out.println("put on a shirt");
else if (temperature > 10) // Here the temperature is less than (or equal to) 20
   System.out.println("put on a sweater");
else if (temperature > 0) // Here the temperature is less than (or equal to) 10
   System.out.println("put on a raincoat");
else // Here the temperature is less than 0
   System.out.println("put on a coat");

এই তিনটি উদাহরণই সমতুল্য।


else2. ব্লকের সূক্ষ্মতা

একটি গুরুত্বপূর্ণ পয়েন্ট:

যদি একটি নির্মাণে কোঁকড়া ধনুর্বন্ধনী ব্যবহার না করেন if-else, তাহলে elseনিকটতম পূর্ববর্তীকে বোঝায় if

উদাহরণ:

আমাদের কোড এটা কিভাবে কাজ করবে
int age = 65;

if (age < 60)
   if (age > 20)
      System.out.println("You must work");
else
   System.out.println("You don't have to work");
int age = 65;

if (age < 60)
{
   if (age > 20)
     System.out.println("You must work");
   else
     System.out.println("You don't have to work");
}

আপনি যদি বাম দিকের কোডটি দেখেন তবে মনে হচ্ছে স্ক্রীন আউটপুট হবে "আপনাকে কাজ করতে হবে না"। কিন্তু ব্যাপারটা তা নয়। বাস্তবে, elseব্লক এবং "আপনাকে কাজ করতে হবে না" বিবৃতিটি দ্বিতীয় (ঘনিষ্ঠ) ifবিবৃতির সাথে যুক্ত।

ডানদিকের কোডে, সংশ্লিষ্ট ifএবং elseলাল রঙে হাইলাইট করা হয়েছে। উপরন্তু, কোঁকড়া ধনুর্বন্ধনী দ্ব্যর্থহীনভাবে স্থাপন করা হয়, স্পষ্টভাবে দেখায় যে কি কি কাজ করা হবে। যে স্ট্রিংটি আপনাকে কাজ করতে হবে না তা কি কখনই প্রদর্শিত হয় না যখন ageএর থেকে বড় হয় 60?



if-else3. একটি বিবৃতি ব্যবহারের উদাহরণ

যেহেতু আমরা if-elseবিবৃতিটি এত ভালভাবে অন্বেষণ করেছি, আসুন একটি উদাহরণ দেওয়া যাক:

import java.util.Scanner;
public class Solution {
   public static void main(String[] args)
   {
     Scanner console = new Scanner(System.in); // Create a Scanner object
     int a = console.nextInt(); // Read the first number from the keyboard
     int b = console.nextInt(); // Read the second number from the keyboard
     if (a < b)                   // If a is less than b
       System.out.println(a);     // we display a
     else                         // otherwise
       System.out.println(b);     // we display b
   }
}
ন্যূনতম দুটি সংখ্যা প্রদর্শন করা হচ্ছে