حلقه ها در برنامه نویسی
موقعیتی را تصور کنید که باید همان کلمه را روی صفحه نمایش دهیم، مثلا کلمه "HELLO" را 10 بار بگوییم. چه کنیم؟
شما می توانید 10 بار
cout << "سلام";
اما اگر شما نه 10 بار، بلکه 20، 30، 40 بار؟، و اگر 200 بار نیاز داشته باشید، چه؟ در این صورت کپی کردن زمان بسیار زیادی طول خواهد کشید. و اگر لازم است کاربر انتخاب کند که چند بار اطلاعات روی صفحه نمایش داده شود؟
برای کنار آمدن با این کار، از ساختار خاصی به نام
حلقه استفاده می کنیم
حلقهیک ساختار الگوریتمی است که در آن دنباله خاصی از دستورات چندین بار تکرار می شود.< /div>
در زبان برنامه نویسی C++ دو نوع حلقه وجود دارد: یک حلقه متغیر (
for
) و یک حلقه شرطی (
while
و
do...while). کد >)
بیایید آشنایی خود را با چرخه ها از نوع اول شروع کنیم.
حلقه با متغیر (for)
اغلب اتفاق می افتد که تعداد تکرار برخی از اقدامات را می دانیم یا با استفاده از داده هایی که می دانیم می توانیم تعداد تکرارها را محاسبه کنیم. برخی از زبان های برنامه نویسی دستوری دارند که به زبان روسی به نظر می رسد repeat(تعداد دفعات)
که تعداد دقیق تکرارها را در براکت ها نشان می دهد.
جالب است که ببینیم این چرخه در سطح ماشین چگونه کار می کند:
1. یک سلول حافظه خاص در حافظه اختصاص داده می شود و تعداد تکرارها روی آن نوشته می شود؛
2. وقتی برنامه یک بار بدنه حلقه را اجرا می کند، محتویات این سلول (شمارنده) یک بار کاهش می یابد؛
3. اجرای حلقه زمانی به پایان می رسد که این سلول صفر شود.
چنین ساختاری در زبان برنامه نویسی C++ وجود ندارد، اما ساختار for
وجود دارد.
شکل کلی دستور حلقه for به صورت زیر است:
برای (/*expression1*/; /*expression2*/; /*expression3*/ )
{
/*یک دستور یا بلوک عبارات - بدنه حلقه*/;
}
این طراحی مستلزم این است که ما:
1. به صراحت یک سلول حافظه را که یک شمارنده خواهد بود اختصاص داد و مقدار اولیه آن را تنظیم کرد؛
2. یک شرط نوشته شده بود که تحت آن بدنه حلقه اجرا می شود؛
3. نحوه تغییر مقدار در این سلول را مشخص کنید.
در قسمت عملی سعی می کنیم کلمه "سلام
"
10 بار نمایش داده شود. در کارهای بعدی این ساخت و ساز را با جزئیات بیشتری تحلیل خواهیم کرد.