Итерационные циклы
Это циклы, количество повторений которых заранее неизвестно. Выход из цикла определяется условием, записанным относительно параметра. Пример. Вывести степени двойки, не превышающие 10000. Количество выводимых чисел – степеней двойки – заранее неизвестно (хотя и может быть вычислено), но есть условие окончания их поиска: выводимое число должно быть меньше 10000. Для циклов с неизвестным числом повторений в Паскале используются 2 оператора: 1) с пост-условием; 2) с пред-условием. Оператор цикла с пост-условием
Это оператор Repeat (ПОВТОРЯТЬ), который в общем виде записывается так: Repeat Операторы Until условие;
Схема его работы представлена на рис. 2.6.
При этом необходимо обязательно изменять параметр внутри цикла, иначе цикл будет выполняться бесконечно (произойдет " зацикливание"). В соответствии со схемой цикл выполняется по крайней мере 1 раз.
Пример. Изобразить степени двойки, не превышающие 10000.
Алгоритм 1. Положить число = 2. 2. Повторять: 2.1. Изобразить число. 2.2. Число: = число * 2. Пока число НЕ превысит 10000. 3. Закончить Программа для этого алгоритма будет иметь вид Program Two; Var Num: Integer; Begin Num: =2; Repeat Writeln (Num); Num: =Num*2; Until Num> 1000; End.
|