Паскаль. Основы программирования


Глава Цикл с последующим условием Оператор repeatuntil


1. Оператор цикла с последующим условием (постусловием) похож на оператор цикла с предусловием, но условие вычисляется и проверяется после выполнения операторов, составляющих тело цикла.

Общий вид оператора цикла с постусловием такой:

                                                    repeat

s1; s2; s3; ..

                                                    until <условие>,

 

где s1, s2, s3, ... - операторы тела цикла; <условие> - логическое выражение.

Переводится: repeat

- повторять, until - до тех пор пока.

Как видите, такой цикл начинается с выполнения операторов внутри цикла, а уже затем вычисляется выражение, записанное в условии.

Если значение этого выражения истинно, тогда осуществляется выход из цикла, если значение ложно, то цикл продолжается и снова выполняются операторы

Надо сразу заметить, что в отличии от цикла while ... do, в цикле repeat

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

Рассмотрим работу этого оператора на примере.

Пример 1. Найти наименьшее натуральное число, дающее при делении на 2, 3, 4, 5, 6 соответственно остатки 1, 2, 3, 4, 5.

Задачу будем решать так: берется наименьшее натуральное число - единица и находятся остатки от деления его на 2, 3, 4, 5 и 6; если остатки будут равны 1, 2, 3, 4 и 5, тогда это число является искомым, его надо выдать на экран и закончить программу, в противном случае, надо брать следующее натуральное число - 2 и проверять его, и так далее.

Программа, составленная по этой идее, очень проста:

Program Problem1;

     uses WinCrt;

     var

        n : integer;

     begin

       n := 0;

       repeat

          n := n + 1;

       until (n mod 2 = 1) and (n mod 3 = 2) and (n mod 4 = 3) and

               (n mod 5 = 4) and

(n mod 6 = 5);

        writeln('Искомое целое число ', n)

    end.




Начало  Назад  Вперед



Книжный магазин