Цикл с постусловием


Формат оператора:
repeat

< тело цикла > 
until  < условие >;


Операторы, заключенные между repeat и until, образуют тело цикла. В данном операторе эти слова являются операторными скобками, поэтому begin и end можно не писать.

 


На первом шаге происходит выполнение операторов тела цикла. Далее происходит вычисление  условия. Обратим внимание на то, что в операторе repeat условие является условием выхода из цикла. Поэтому если условие является ложным, то происходит возврат в  тело цикла и повторное его выполнение. Если на какой-то итерации условие выхода из цикла станет истинным, происходит выход из цикла на следующий за ним оператор. Понятно, что тело цикла repeat будет выполнено хотя бы один раз.

Пример. С клавиатуры вводятся натуральные числа. Суммировать числа, пока не будет введен 0.

var a, sum : integer;

begin

   sum := 0;

   repeat

      read (a);

      sum := sum + a;

   until a = 0; 

writeln (sum);

end.

{ почистили переменную sum, в которой будет накапливаться сумма вводимых чисел }

 

{ вводим очередное число в переменную a }

{ добавляем a к сумме }

{ делаем до тех пор, пока a не станет равным 0 }


Заметим, что приведенная программа будет работать правильно, даже если первое введенное число будет 0.


 

Адрес: 614039, г. Пермь, ул. Комсомольский проспект, 45
Телефон: +7 (342) 212-80-71
E-Mail: school9-perm@ya.ru
Вопрос администратору сайта