7.5.3. ОПЕРАТОР ЦИКЛА С ПОСТУСЛОВИЕМ REPEAT
Данный оператор имеет вид:
repeat s until p;
Сначала выполняется тело цикла (s), затем вычисляется логическое выражение p (условие), в случае ложности которого вновь выполняется тело цикла. Затем выполнение тела цикла, вычисление условия p и его проверка повторяются до тех пор, пока выражение p не станет равным true. Тогда управление передается следующему (за repeat) оператору в программе.
Использованные здесь зарезервированные слова repeat и until имеют смысл повторять и пока не, соответственно.
Пример использования оператора цикла repeat:
Program prost; {проверка, является ли введенное с
клавиатуры
натуральное
число простым}
var
n: integer; {введенное число}
d: integer; {делитель}
r: integer; {остаток от деления}
begin
write(’Введите натуральное число:’); readln(n);
d:=2; {сначала
будем делить на два}
repeat
r:= n mod d;
if r<>0 {n не разделилось нацело на d}
then d:=d+1;
until r=0; {пока не нашли число, на которое делится n}
if d=n
then writeln(n,’ – простое число.’)
else writeln(n,’
– не простое число.’);
end.