حلقه do-while (Do/While Loop)
حلقه «do-while» اول کد را اجرا می کند، بعد «شرط (Condition)» را چک می کند. مثل بازی که یک جان رایگان می دهد، بعد نمره را بررسی می کند.
ایده اصلی do-while
برخلاف «while»، این حلقه حداقل یک بار اجرا می شود. سپس تا وقتی شرط «true» است، تکرار ادامه دارد.
سینتکس (Syntax)
بدنه اول اجرا می شود. سپس شرط بررسی می شود.
do {
/* code block */
} while (condition);
مثال: اجرای حداقل یک بار
این کد دست کم یک بار چاپ می کند. سپس i تا 5 کمتر است، ادامه می دهد.
int i = 0;
do {
printf("%d\n", i);
i++;
} while (i < 5);
نکته: «شمارنده (Counter)» را فراموش نکن؛ وگرنه حلقه بی نهایت می شود.
وقتی شرط از ابتدا نادرست است
حتی اگر شرط ابتدا «false» باشد، بدنه یک بار اجرا می شود. سپس حلقه متوقف می شود.
int i = 10;
do {
printf("i is %d\n", i);
i++;
} while (i < 5);
مثال کاربردی: ورودی کاربر
این کد تا وقتی ورودی مثبت است ادامه می دهد. با صفر یا منفی متوقف می شود.
int number;
do {
printf("Enter a positive number: ");
scanf("%d", &number);
} while (number > 0);
گام های عملی
- متغیر (Variable) اولیه بساز.
- بدنه را بنویس و خروجی بده.
- شرط توقف منطقی تعیین کن.
هشدار: شرطی بگذار که نهایتاً «false» شود؛ بی نهایت نشود.
برای مقایسه رفتار شرط، صفحه حلقه while را ببین. همچنین نمونه های بیشتر در مثال های واقعی while مفیدند.
جمع بندی سریع
- do-while حداقل یک بار اجرا می شود.
- بعد از بدنه، شرط بررسی می شود.
- شمارنده را همیشه تغییر بده.
- برای تکرار ورودی، عالی است.