Оператор цикла с постусловием

В вышеприведенном примере как раз используется оператор цикла с постусловием. Синтаксис этого оператора следующий:

repeat <операторы> until <условие>

Здесь repeat, until – ключевые слова (перев. с англ. повторять и до тех пор пока);

<операторы> – любые операторы Турбо-Паскаля (их называют телом цикла);

<условие> – логическое выражение типа сравнения, используемое для выхода из цикла. Оператор работает следующим образом: сначала выполняются операторы, расположенные в теле цикла, затем вычисляется условие, и если получается истинное значение, то осуществляется выход из цикла. Если значение выражения ложно, то выполнение операторов тела цикла повторяется, а затем снова проверяется условие. И так, операторы тела цикла выполняются хотя бы раз, а потом все зависит от условия выхода из цикла. Очевидно, один из операторов тела цикла должен влиять на значение условного выражения, поскольку иначе цикл будет повторяться бесконечно.

Проиллюстрируем использование оператора цикла с постусловием на примере, в котором выводятся нечетные числа, меньшие 10. Схема алгоритма приведена на рис.10, а программа в примере – pr10.

Рис. 10

 

program pr10;

var i:integer;

begin

i:=1;

repeat

writeln(i);

i:=i+2;

until i>10;

end.

В результате работы этой программы будут напечатаны в столбик все нечетные числа от 1 до 9.