Old shartli ko'chadan operator (esa) Operator bir marta ham bajarilmasligi mumkin bo'lgan takrorlanadigan hisob-kitoblarni tashkil qilish uchun ishlatiladi. While ifodasi blok diagrammasi quyida keltirilgan OLDINGI LOOP algoritmik tuzilishini amalga oshiradi. Ushbu algoritmik tuzilish takrorlanishlar soni (takrorlashlar) oldindan noma'lum bo'lgan hollarda qo'llaniladi va takrorlanishlar bo'lmasligi mumkin.
Operator formati:
esa (<Условие>)
<Оператор>
Avval tekshirildi<Условие>... Agar<Условие> to'g'ri, keyin<Оператор> gacha<Условие> yolg'on bo'lmaydi. Agar<Условие> noto'g'ri bo'ladi, keyin boshqaruv tsikldan keyin operatorga o'tkaziladi.<Условие> Tsiklni davom ettirish sharti,<Оператор> Bu tsiklning tanasi (tsikldan chiqish uchun amal + amalni takrorlang).
Izoh.<Оператор> agar bir marta ham bajarilmasligi mumkin<Условие> dastlab yolg'ondir.
Old shart bilan operatordan foydalanish misoli:
char String \u003d "Bu misol";
Count \u003d 0; // trening
while (String! \u003d ‘\\ 0’) // davom etish sharti
(Count ++;) // tsiklning tanasi (takrorlanadigan amal +
Ushbu misolda, String bo'sh bo'lsa ham, ko'chadan bir marta ham bajarilmaydi.
While iborasini ishlatadigan yana bir misolni ko'rib chiqamiz, lekin do while iborasidan foydalanish to'g'riroq:
// Ruscha harfni kiriting
char RussianLetter;
scanf ("% c", & RussianLetter); // trening
esa ((RussianLetter.)< ‘A’) ||
(RussianLetter\u003e ‘I’)) // davom etish sharti
(scanf (“% c”, & RussianLetter);) // pastadir tanasi (takrorlangan amal + // ko'chadan chiqish uchun harakat)
Postcondition bilan ko'chadan operator (qilesa) Operator kamida bir marta bajariladigan takroriy hisob-kitoblarni tashkil qilish uchun ishlatiladi. Do while iborasi POSTWORD LOOP algoritmik tuzilishini amalga oshiradi, uning blok diagrammasi quyida ko'rsatilgan. Ushbu algoritmik tuzilish takrorlanishlar soni oldindan ma'lum bo'lmaganda, lekin har doim kamida bitta takrorlash amalga oshirilganda qo'llaniladi (masalan, ma'lumotlar ko'chadan kiritilgan bo'lsa).
Operator formati:
<Оператор>
esa (<Условие>);
Birinchi marta ijro etildi<Оператор>keyin tekshirildi<Условие>... Agar<Условие> to'g'ri, keyin u yana amalga oshiriladi<Оператор>... Bu qadar davom etadi<Условие> yolg'on bo'lmaydi.
Izoh.<Оператор> har doim kamida bir marta ishlaydi.
Postcondition bilan pastadirdan foydalanish misoli:
// Foydalanuvchidan 0 dan 10 gacha bo'lgan raqamni so'rang
// tayyorgarlik yo'q
(scanf (“% d”, & Number);) // pastadir tanasi (takrorlanadigan amal +
// ko'chadan chiqish uchun harakat)
while ((Raqam< 0)||(Number > o'n)); // davom etish sharti
Misolda do while loop ishlatiladi, chunki avval raqam kiritiladi va keyin tekshiriladi.
While gapidan keyin nuqta-vergul qo'yilishini unutmang;.