2.3 While, do…while, for цикл операторлары. Циклдердегі басқару операторлары (break, continue). while, for, do…while циклдерді бағдарламалау
Цикл дегеніміз алгоритмнің бір немесе бірнеше қадамдарының берілгендердің әр түрлі мәндері үшін қайталанып отыратын бөлігі.
Циклге күнделікті өмірден мысалдар келтірейік.
Кейбір жағдайларда нәтижеге жету барысында белгілі бір әрекет бірнеше рет қайталануы мүмкін. Шегені қағу үшін балғамен бірнеше рет ұру керек. Бір сынып бөлмесінен келесі сынып бөлмесіне бару үшін бірнеше қадам жасау керек.
Циклдің үш түрі бар: параметрлі (арифметикалық) цикл, шарты алдын-ала берілген цикл, шарты соңынан берілген цикл.
Ең бірінші параметрлі циклге тоқталайық. Егер орындалатын әрекеттің қайталану саны белгілі болса, онда параметрлі цикл қолданылады. Мысалы, дене шынықтыру сабағында мұғалім сендерге стадионды айнала үш айналым жасап жүгіруді тапсырды делік. Бұл тапсырманы орындау үшін сендер бір айналымды үш рет қайталауларың керек. Басқа мысал: математикадан үйге берілген тапсырмада бес есеп шығару керек болсын. Яғни, мұнда «есепті шығару» әрекетін бес рет орындау керек. Параметрлі циклге мысал келтірейік:
2 3, 2 4, 2 5, 2 6, 2 7
y=2x
For операторы For операторының форматы:
for ( өрнек 1 ; өрнек 2 ; өрнек 3 ) денесі
Өрнек 1 әдетте циклды басқаратын айнымалылардың бастапқы мәндерін орныту үшін қолданылады. Өрнек 2 – бұл цикл денесінің орындалу шартын анықтайтын өрнек. Өрнек 3 әрбір циклдың денесі орындалғаннан кейін циклды басқаратын айнымалылардың өзгеруін анықтайды.
For операторының орындалу схемасы:
1. Өрнек 1 орындалады.
2. Өрнек 2 орындалады.
3. Егер 2 өрнектің мәні 0-ден өзгеше болса (ақиқат), онда цикл денесі орындалады, 3 өрнек мәні есептеледі де, 2 пунктке өтеді. Егер 2 өрнек мәні 0-ге тең болса (жалған), онда басқару for операторынан кейінгі операторға беріледі.
Шартты тексеру циклдың басында орындалады. Бұл дегеніміз – цикл денесі бір де орындалмауы мүмкін.
Мысал:
int main()
{ int i,b;
for (i=1; i<10; i++)
b=i*i;
return 0;
}
Мысалда 1-ден 9-ға дейінгі сандардың квадраттары есептеледі. N санындағы ең үлкен цифрды табу.