Monday, October 9, 2017

C# For Beginners , Part -15 (While & do while loop )

আজকে , আমরা  while Loop ও  do while loop  নিয়ে কথা বলবো ।। এটা  ঠিক কিভাবে ,কাজ করে   ??  চলো , নীচে
একটা খুবই সিম্পল কোড দেখে আসি ।।

using System;
    class Program
    {
        static void Main()
        {         
            int a = int.Parse(Console.ReadLine());
            int b = 0;
      // Checking Conditions b is equal or less than a
            while(b<=a)
            {
                Console.WriteLine(b);
                b = b + 2;
            }
            Console.ReadKey();
        }
           
        }
     
চলো , প্রতিটি লাইন ধরে ধরে বুঝার ট্রাই করি । প্রথমে , আমরা - ইউসার থেকে , ইনপুট নিবো , তারপর , একটি ইন্টিজার ভ্যারিয়েবল  b ডিক্লেয়ার করবো , এবং এর মান 0 তে ইনিশিয়ালাইজ করবো ।। তারপর ,  while লুপ ইউস করবো ।। প্রথমেই , আমরা কন্ডিশন চেক করবো , কন্ডিশন'টা  b<=a
মূলত , একটা বুলিয়ান এক্সপ্রেশন , যদি এটা সত্য হয় , তাহলে - লুপ এর ভেতরের কোড এক্সিকিউট করবে , আর না হয় -- করবে না ।। প্রতিবার b = b + 2; এর সাহায্যে , b এর মান ২ করে বাড়ার পর - ,লুপটি কন্ডিশন চেক করবে , যদি সত্য হয় - তাহলে প্রিন্ট করবে , অন্যথায় নয় ।।

 এবার চলো , আমরা - do while loop নিয়ে কথা বলবো ।। তো , আমরা একটা কোড দেখে আসি , চলো ---------------------

using System;
    class Program
    {
        static void Main()
        {
          
            int a = int.Parse(Console.ReadLine());
            int b = 0;
            do
            {
                Console.WriteLine(b);
                b = b + 2;
            } while (b <= a) ;
            Console.ReadKey();
        }
        }
     

একই , প্রোগ্রাম  - আমি  do while loop ইউস করে করলাম । রান করে , দেখো - কি হয় ??? হুম , সেই আগেরটার মতোই আউটপুট পাবা ।। এখানে , তফাত কিছুই নেই - শুধু বলার মতো , একটা তফাতই আছে ।। while Loop এর ক্ষেত্রে , আমাদের আগে কন্ডিশন চেক করা হতো , তারপর - ভেতরের কোড এক্সিকিউট হতো , কিন্তু - এখানে , কিন্তু একটু আলাদা , ব্যাপার'টা । এখানে , কন্ডিশন পরে চেক করা হয় ।।

এই কারনেই , ডু - হোয়াইল লুপ এর ক্ষেত্রে , ভেতরের কোড কমপক্ষে একবার রান হবেই , কারণ - কন্ডিশন পরে চেক করা হয় । কিন্তু , শুধু  হোয়াইল লুপ এর ক্ষেত্রে যদি - কন্ডিশন ভুল হয় , তাহলে - সেটা একবারও রান হবে না । যেমন , একটা কোড দেখে আসি - চলো ,

using System;
    class Program
    {
        static void Main()
        {
          
           
            int b = 0;
            do
            {
                Console.WriteLine(b);
                b = b + 2;
            } while (b < 0) ;
            Console.ReadKey();
        }      
        }
     
এখানে ,  (b < 0) শর্তের মধ্যেই ,দেয়া আছে -- যদি b এর মান শূন্য এর চেয়ে কম হয় , তাহলে শুধু লুপ কন্টিনিউ হবে , তাছাড়া নয় , কিন্তু আমাদের b এর মান  কিন্তু শূন্য  তে ইনিশিয়ালাইজ করা আছে , এর মানে , এই লুপ কন্টিনিউ হবার কথা নয় । কিন্তু , রান করিয়েই দেখো -- একবার হলেও আউটপুট পাবে । কারণ কি ??? কারন - এটাই , do while loop প্রথমে কোড রান করাবে , তারপর কন্ডিশন চেক করাবে , তাই কন্ডিশন মিথ্যা হলেও , অন্তত - একবার রান হবেই , এই লুপ ।

আশা করি , বিষয়টি কিছুটা ক্লিয়ার হয়েছে । যাই হোক , আজ এইটুকুই থাক । আবার , পরের পর্বে অন্যকিছু নিয়ে কথা বলবো । । 












No comments:

Post a Comment