حلقه قطعی در مقابل حلقه نامشخص
حلقهیک بلوک از کد است که برای تعداد مشخصی بارها یا تا زمانی که شرایطی برآورده شود تکرار می شود. حلقه معین حلقه ای است که در آن تعداد دفعاتی که قرار است اجرا شود از قبل قبل از ورود به حلقه مشخص است. در یک حلقه نامشخص، تعداد دفعاتی که قرار است اجرا شود از قبل مشخص نیست و تا زمانی که شرایطی برآورده نشود، اجرا می شود.
حلقه قطعی چیست؟
حلقه معین حلقه ای است که در آن تعداد دفعاتی که قرار است اجرا شود قبل از ورود به حلقه از قبل مشخص است.تعداد تکرارهایی که قرار است تکرار شود معمولاً از طریق یک متغیر عدد صحیح ارائه می شود. به طور کلی، حلقههای for به عنوان حلقههای معین در نظر گرفته میشوند. در زیر مثالی از یک حلقه مشخص است که با استفاده از حلقه for (در زبان برنامه نویسی جاوا) پیاده سازی شده است.
برای (int i=0; i < num; i++)
{
//بدنه حلقه for
}
حلقه بالا بدنه خود را چند بار ارائه شده توسط متغیر num اجرا می کند. این را می توان از مقدار اولیه متغیر i و شرط حلقه تعیین کرد.
حلقههای While همچنین میتوانند برای پیادهسازی حلقههای معین همانطور که در زیر نشان داده شده است (در جاوا) استفاده شوند.
int i=0;
while(i<num)
{
//بدنه حلقه
i++;
}
حتی اگر از یک حلقه while استفاده می شود، این نیز یک حلقه قطعی است، زیرا از قبل مشخص شده است که حلقه قرار است تعداد دفعات ارائه شده توسط متغیر num را اجرا کند.
حلقه نامشخص چیست؟
در یک حلقه نامشخص، تعداد دفعاتی که قرار است اجرا شود از قبل مشخص نیست. به طور معمول، یک حلقه نامشخص تا زمانی که شرایطی برآورده شود اجرا می شود. در حالی که حلقه ها و حلقه های do-while معمولا برای اجرای حلقه های نامحدود استفاده می شوند. اگرچه دلیل خاصی برای استفاده نکردن از حلقههای for برای ساخت حلقههای نامحدود وجود ندارد، حلقههای نامشخص را میتوان با استفاده از حلقههای while سازماندهی کرد. برخی از مثالهای رایجی که برای پیادهسازی حلقههای نامشخص نیاز دارید عبارتند از خواندن یک ورودی تا زمانی که کاربر یک عدد صحیح مثبت وارد کند، خواندن یک رمز عبور تا زمانی که کاربر همان رمز عبور را دو بار پشت سر هم وارد کند، و غیره.
تفاوت بین حلقه معین و حلقه نامشخص چیست؟
حلقه معین حلقه ای است که در آن تعداد دفعاتی که قرار است اجرا شود قبل از ورود به حلقه از قبل مشخص است، در حالی که یک حلقه نامشخص تا زمانی که یک شرط برآورده شود و تعداد دفعات انجام آن اجرا شود اجرا می شود. برای اجرا از قبل مشخص نیست.اغلب، حلقههای معین با استفاده از حلقههای for و حلقههای نامشخص با استفاده از حلقههای while و حلقههای do-while پیادهسازی میشوند. اما هیچ دلیل نظری برای عدم استفاده از حلقه های for برای حلقه های نامحدود و حلقه های while برای حلقه های معین وجود ندارد. اما حلقههای نامشخص را میتوان با حلقههای while سازماندهی کرد، در حالی که حلقههای مشخص را میتوان با حلقههای for مرتب کرد.