সি প্রোগ্রামিং এ while এবং do….. while loop

সি প্রোগ্রামিং লুপ (loop):

লুপ (loop) এর মাধ্যমে কোন প্রোগ্রাম এর নির্দিষ্ট কোন অংশ বারবার করা যায়, যতক্ষণ না পর্যন্ত তাকে দেয়া শর্তটি মিথ্যা না হয়। যেমন ধরুনঃ

1)    যদি আপনি কোন কোড ১০০ বার সম্পাদন করতে চান।

2)    আপনি কোন একটা কোড এমন ভাবে তৈরি করলেন যেন ইউজার ঠিক করতে পারে টা কতক্ষণ চলবে।

এই ধরনের কাজ করার জন্য সি প্রোগ্রামিং এ লুপ(loop) ব্যবহার করা হয়।

প্রোগ্রামিং সি তে  সাধারনত তিন ধরনের লুপ(loop) দেখা যায়। যথাঃ

1.       ফর লুপ (for loop)

2.       হোয়াইল লুপ (while loop)

3.       ডু…হোয়াইল লুপ (do…while)

হোয়াইল লুপ (while loop):

হোয়াইল লুপ (while loop) এর সিনট্যাক্সঃ

   while (test expression)

{
statement/s to be executed.
}

 

হোয়াইল লুপ এর কাজ হল এটা প্রোগ্রামের টেস্ট এক্সপ্রেশন চেক করে যে  এক্সপ্রেশনটি  সত্য নাকি মিথ্যা । যদি টেস্ট এক্সপ্রেশনটি সত্য হয় তাহলে এটা হোয়াইল লুপের বডির ভেতরের কোড গুলো এক্সিকিউট করবে, মানে ব্রাকেট এর ভেতরের কোড গুলো এক্সিকিউট করবে। তারপর এটি আবার  টেস্ট এক্সপ্রেশনটি চেক করবে যে এটি সত্য নাকি মিথ্যা। এই প্রক্রিয়া টি ততক্ষণ চলবে টেস্ট এক্সপ্রেশনটি যতক্ষণ পর্যন্ত মিথ্যা না হবে।

C while loop

হোয়াইল লুপের উদাহরনঃ

এমন একটি সি প্রোগ্রাম লিখতে হবে যেটা যে কোন একটি নাম্বারের  ফ্যাকটোরিয়াল বের করবে এবং নাম্বারটি ইউজার ইনপুট করবে। (ইঙ্গিতঃ n এর  ফ্যাকটোরিয়াল= ***………..*n )

/* হোয়াইল লুপ কিভাবে কাজ করে সেটা দেখানোর জন্য একটি সি প্রোগ্রাম দেওয়া হল */

     #include <stdio.h>      int main()

{

int number,factorial;

printf(“Enter a number.\n”);

scanf(“%d”,&number);

factorial=1;

while (number>0){      /* হোয়াইল লুপ ততক্ষন  কাজ করবে যতক্ষণ টেস্ট কন্ডিসন      number>0     সত্য থাকবে  */

factorial=factorial*number;

–number;

}

printf(“Factorial=%d”,factorial);

return 0;

}

আউটপুট :

   Enter a number.    5

Factorial=120

 

ডু….. হোয়াইল লুপ 

প্রোগ্রামিং সি তে  ডু….. হোয়াইল লুপ এবং হোয়াইল লুপ প্রায় একই রকম। এই দুইটা লুপের মধ্যে পার্থক্য হল শুধু ,  হোয়াইল লুপ আগে টেস্ট এক্সপ্রেশনটি চেক করে এবং তারপর কোড এক্সিকিউট করে, এবং ডু….. হোয়াইল লুপ আগে  কোড এক্সিকিউট করে এবং তারপর  টেস্ট এক্সপ্রেশন চেক করে।

ডু….. হোয়াইল লুপের সিনট্যাক্সঃ

       do

{

some code/s;

}

while (test expression);

 

 

প্রথমে বডির ভিতরের do লুপ এক্সিকিউট হবে তারপর প্রোগ্রাম এক্সপ্রেশন চেক করবে। এক্সপ্রেশন যদি সত্য হয় তাহলে do আবার এক্সিকিউট হবে এবং এক্সপ্রেশন মিথ্যা না হওয়া পর্যন্ত লুপ চলতে থাকবে।

C do while loop

     #include <stdio.h>       int main(){

int sum=0,num;

do   /* Codes inside the body of do…while loops are at least        executed  once. */

{

printf(“Enter a number\n”);

scanf(“%d”,&num);

sum+=num;

}

while(num!=0);

printf(“sum=%d”,sum);

return 0;

}

আউটপুট :

      Enter a number     3

Enter a number

-2

Enter a number

0

sum=1

লেখক পরিচিতিঃ

হাসান নাইম

কম্পিউটার এর সাথে ভালবাসা করি। মজা পাই কম্পিউটার এর সামনে বসে থাকতে। ইন্টারনেট ছাড়া জীবনটা ই কেমন জানি মনে হয়। টুকটাক তথ্য নিয়ে নাড়াচাড়া করি ভাই। এই আমার জীবন।