حلقه while و do…while در برنامه نویسی C
در این آموزش به کمک مثال های مختلف با حلقه های while و do…while در برنامه نویسی C آشنا خواهید شد.
در برنامه نویسی از حلقه ها برای تکرار بلوک کد استفاده می شود و تا زمانی که شرط تعیین شده درست باشد، تکرار کدها ادامه پیدا می کند.
در برنامه نویسی C سه نوع حلقه حلقه وجود دارد:
۱- حلقه for
۲- حلقه while
۳- حلقه do…while
در این آموزش حلقه های while و do…while را بررسی می کنیم.
حلقه while
ساختار حلقه while:
while (عبارت شرطی)
{
// دستورات بدنه حلقه
}
حلقه while چگونه کار می کند؟
- در شروع حلقه while عبارت شرطی داخل پرانتز بررسی می شود.
- اگر عبارت شرطی درست باشد، دستورات داخل بدنه حلقه while اجرا می شوند و سپس دوباره عبارت شرطی ارزیابی خواهد شد.
- این روند ادامه می یابد تا زمانی که عبارت شرطی نادرست شود.
- اگر عبارت شرطی نادرست شود و مقدار صفر را برگرداند، حلقه پایان می یابد.
برای کسب اطلاعات بیشتر در مورد عبارت های شرطی به آموزش عملگرها در برنامه نویسی C قسمت عملگرهای رابطه ای و منطقی مراجعه کنید.
فلوچارت حلقه while
مثال ۱: حلقه while
// برنامه چاپ اعداد ۱ تا ۵
#include <stdio.h>
int main()
{
int i = 1;
while (i <= 5)
{
printf(“%dn”, i);
++i;
}
return 0;
}
خروجی
۱
۲
۳
۴
۵
در این برنامه ابتدا متغیر i تعریف و مقدار اولیه آن ۱ تعیین شده است.
۱- وقتی i=1 است، پس عبارت شرطی i <= 5 برقرار و درست می باشد. در نتیجه دستورات بدنه حلقه while اجرا شده و عدد ۱ در صفحه چاپ می شود. سپس i به مقدار ۲ افزایش می یابد.
۲- حالا i=2 است و دوباره عبارت شرطی i <= 5 درست می باشد. بدنه حلقه while دوباره اجرا شده و عدد ۲ در صفحه چاپ میشود و مقدار i نیز به ۳ می رسد.
۳- این فرآیند تا زمان رسیدن i به ۶ ادامه می یابد. وقتی i=6 شد، عبارت شرطی i <= 5 نادرست خواهد شد و اجرای حلقه تمام می شود.
حلقه do…while
حلقه do…while مشابه حلقه while است اما یک تفاوت مهم با آن دارد. بدنه حلقه do…while حداقل یکبار اجرا می شود سپس عبار شرطی بررسی خواهد شد.
ساختار حلقه do…while:
do
{
// دستورات داخل حلقه
}
while (عبارت شرطی);
حلقه do…while چگونه کار می کند؟
- بدنه حلقه do…while یکبار اجرا می شود سپس عبارت شرطی بررسی خواهد شد.
- اگر عبارت شرطی درست باشد، بدنه حلقه دوباره اجرا شده و عبارت شرطی نیز دوباره بررسی می شود.
- این روند ادامه می یابد تا زمانی که عبارت شرطی نادرست شود.
- اگر عبارت شرطی نادرست باشد و مقدار صفر برگرداند، حلقه تمام می شود.
فلوچارت حلقه do…while در برنامه نویسی C
مثال ۲: حلقه do…while
// برنامه محاسبه مجموع اعداد ورودی تا زمان وارد شدن عدد صفر
#include <stdio.h>
int main()
{
double number, sum = 0;
// بدنه حلقه حداقل یکبار اجرا می شود
do
{
printf(“Enter a number: “);
scanf(“%lf”, &number);
sum += number;
}
while(number != 0.0);
printf(“Sum = %.2lf”,sum);
return 0;
}
خروجی
Enter a number: 1.5
Enter a number: 2.4
Enter a number: -3.4
Enter a number: 4.2
Enter a number: 0
Sum = 4.70