সি প্রোগ্রামিং ফর লুপ - C Programming for Loop
কোনো নির্দিষ্ট কোড ব্লককে রিপিট(repeat) করার জন্য প্রোগ্রামিং এ লুপ(loop) ব্যবহৃত হয়। এই অধ্যায়ে আপনি সি প্রোগ্রামিং এ for লুপ তৈরি করা শিখবেন।
কন্ডিশন(condition) মিথ্যা না হওয়া পর্যন্ত কোনো কোড ব্লককে রিপিট(repeat) করার জন্য প্রোগ্রামিং এ লুপ ব্যবহৃত হয়। সি প্রোগ্রামিং এ তিন ধরণের লুপ রয়েছেঃ
- সি ফর লুপ-for loop
- সি হোয়াইল লুপ - while loop
- সি ডু...হোয়াইল লুপ - do...while loop
সি for লুপ
সি for লুপের সিনট্যাক্স
for (initializationStatement; testExpression; updateStatement)
{
// এই কোড এক্সিকিউট হবে
}
ফর লুপ কিভাবে কাজ করে?
- initializationStatement কেবলমাত্র একবার এক্সিকিউট(execute)হয়।
- তারপরে testExpression এক্সিকিউট হয়। ইহা false(0) হলে for লুপের সমাপ্তি ঘটে। কিন্তু টেস্ট এক্সপ্রেশনের ভ্যালু যদি True হয় তাহলে
for
লুপের কোড ব্লক এক্সিকিউট হয় এবং updateStatement এর ভ্যালু আপডেট হয়। - testExpression মিথ্যা না হওয়া পর্যন্ত ইহা চলতেই থাকে।
testExpression এর ভ্যালু কখন True এবং কখন False হয়ঃ রিলেশনাল(relational) এবং লজিক্যাল(logical) অপারেরটর পেজে আলোচনা করা হয়েছে।
for লুপের ফ্লোচার্ট
উদাহরণ ১: for loop
// পূর্ণ সংখ্যা ১ হতে ৫ পর্যন্ত আউটপুট নেওয়ার জন্য সি প্রোগ্রাম
#include<stdio.h>
#include<conio.h>
int main()
{
int i;
clrscr();
for(i=1; i<=5; i++)
{
printf("\n%d",i);
}
getch();
}
আউটপুট
1 2 3 4 5
উদাহরণ ২: for loop
// প্রথম n সংখ্যক স্বাভাবিক সংখ্যার যোগফল নির্ণয়ের প্রোগ্রাম।
// ধনাত্মক পূর্ণ সংখ্যা 1,2,3...n স্বাভাবিক সংখ্যা হিসাবে পরিচিত।
#include <stdio.h>
int main()
{
int num, count, sum = 0;
printf("Enter a positive integer: ");
scanf("%d", &num);
//num এর মান(value) count এর চেয়ে ছোট হলে for লুপের সমাপ্তি ঘটে
for(count = 1; count <= num; ++count)
{
sum += count;
}
printf("Sum = %d", sum);
return 0;
}
আউটপুট
Enter a positive integer: 10 Sum = 55
উপরের উদাহরণের ব্যাখ্যাঃ
- ইউজার কর্তৃক প্রবেশ করানো ভ্যালু num ভ্যারিয়েবলে জমা হয়। ধরে নিই, ইউজার 10 প্রবেশ করিয়েছে।
- count ভ্যারিয়েবলের ইনিশিয়াল(initial) ভ্যালু 1 এসাইন(assign) করা হয়েছে এবং test expression মূল্যায়িত হবে। যেহেতু
count <= num
(10 এর চেয়ে 1 ছোট) সত্য, সুতরাং লুপের কোড ব্লক এক্সিকিউট(execute) হবে এবং sum এর ভ্যালু 1 এর সমান হবে। - তারপরে updateStatement
++count
এক্সিকিউট হয়ে count এর ভ্যালু 2 এর সমান হবে। পুনরায় testExpression এক্সিকিউট হবে। যেহেতু 10 এর থেকে 2 ছোট, সুতরাং testExpression এর ভ্যালু true হবে এবং লুপের কোড ব্লক এক্সিকিউট হবে। sum এর ভ্যালু 3 এর সমান হবে। - count এর ভ্যালু 11 এ না পৌঁছা পর্যন্ত এই প্রক্রিয়া চলতে থাকবে এবং sum এর ভ্যালু নির্ণয় হবে।
- যখন count এর ভ্যালু 11 এর সমান হবে তখন testExpression মিথ্যা হয়ে যাবে কারণ 10 এর চেয়ে 11 ছোট বা সমান নয়। সুতরাং এখানে লুপের সমাপ্তি ঘটবে এবং এর পরবর্তী কোড সম্পাদিত হবে। লুপ শেষে sum প্রিন্ট হবে।