Цикл с постусловием «repeat».

Цикл с постусловием, как и с предусловием используется в том случае, если некоторую последовательность действий (инструкций программы) надо выполнить несколько раз, причём необходимое число повторений неизвестно и может быть определено только во время работы.

 

Формат записи:

repeat

    // выполняемые операторы

  until условие

Действие цикла: Сначала выполняются операторы между repeat и until, затем вычисляется значение условия. Если условие ложно (False) операторы выполняются ещё раз, т.д. Если условие истинно (True) – действие цикла прекращается.

 

Задача. Используя в качестве примера приложение «Цикл repeat» из папки «Задание», составить проект, который проверяет является ли введённое число простым (т.е. делится только на единицу и на само на себя).

Код программы:

Примечание: в программе проверяется деление числа N на 2, 3 и т.д. до N и проверкой остатка после каждого деления. Если остаток равен 0,  и это число равно N, то оно – простое число.

 

 

procedure TForm1.Button1Click(Sender: TObject);

var

    N: integer;                // проверяемое число

    d: integer;                 // делитель

    r: integer;                 // остаток от деления N на d

begin

    N:=StrToInt(Edit1.text);

    d := 2;                     // сначала будем делить на два

    repeat

        r := N mod d;

        if r <> 0               // N не разделилось нацело на d

            then d := d + 1;

    until r = 0;               // повторять пока не найдено число на N делится без остатка

    label2.caption:=Edit1.text;

    if d = N

        then label2.caption:=label2.caption + ' - простое число.'

            else label2.caption:=label2.caption + ' - обычное число.';

end;

 

 

 

 

 

 

 

Сайт создан в системе uCoz