Цикл типу while

Цикл типу while є циклом з передумовою. Він використовується у випадку, коли, по-перше, не відома точна кількість повторів і, по-друге, при цьому немає необхідності, щоб цикл неодмінно був виконаний хоча б один раз. Цикл типу while має наступну форму запису:

while (вираз)

оператор;

В якості виразу зазвичай використовуються умовні вирази. В загальному випадку можна використовувати вирази довільного типу. На місці оператора може стояти простий оператор або сукупність операторів, об’єднаних у блок дужками {}.

Якщо вираз істинний (не рівний нулю), то тіло циклу виконується один раз, далі вираз перевіряється знову. Ітерації (перевірка умови та тіло циклу) виконуються до тих пір, поки вираз не стане хибним (рівним нулю).

При організації циклу типу while в його тіло повинні бути включені конструкції, які б змінювали вираз, що перевіряється, так, щоб все ж таки він став хибним. В протилежному випадку виконання циклу ніколи не закінчиться.

Приклад 1. Цикл типу while.

Користувачу дається 10 спроб щоб вгадати задане програмою число.

int i=1, rez=1;

while (i++<=10&&rez!=25)

{

cout<<"\nВведіть число:";

cin>>rez;

}

if (i==12)cout<<"\nBи не вгадали.";

else cout<<"\nВітаю! Ви вгадали число.";

В даному прикладі цикл виконується до тих пір, поки не вгадано число або не вичерпано кількість спроб.

Цикл типу do — while

Цикл типу do — while є циклом з постумовою і використовується у тих випадках, коли невідома точна кількість повторів, але водночас цикл необхідно виконати не менше одного разу. Цикл типу do — while дуже схожий на цикл типу while; різниця тільки в тому, що перевірка істинності виразу в циклі do — while має місце після виконання тіла циклу. Цей цикл має наступну форму запису:

do оператор; while (вираз);

Приклад 2. Цикл типу do — while.

Необхідно вгадати задане у програмі число. Один з варіантів реалізації:

do cin>>r;

while (r!=13);

cout<<"Bи вгадали число.";

В цьому прикладі користувач вводить числа до тих пір, поки не буде введено число 13. Після цього видається повідомлення про те, що ви вгадали.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: