Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatika.docx
Скачиваний:
5
Добавлен:
15.08.2019
Размер:
281.69 Кб
Скачать

Оператор повтора repeat

Оператор повтора Repeat аналогичен оператору While, но отличается от него, во-первых, тем, что условие проверяется после очередного выполнения операторов тела цикла и таким образом гарантируется хотя бы однократное выполнение цикла, а во-вторых, тем, что критерием прекращения цикла является равенство выражения константеТгие (Истина). За это цикл Repeat часто называют циклом с постусловием или циклом «До», так как он прекращает выполняться, как только значение выражения условия, записанного после слова Until равно True (Истина).

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

Repeat

  • оператор;>

I

• • •

  • оператор >

Until < условие окончания цикла >;

Операторы, заключенные между словами Repeat и Until, являются телом цикла. Вначале выполняется тело цикла, затем проверяется условие выхода из цикла. Если результат булевского выражения равен False, то тело цикла активизируется еще раз; если результат True, происходит выход из цикла.

  1. Наберите программу АВС4, которая вводит и суммирует любое количество целочисленных значений. Если вы введете число 999. то на экране выводится результат суммирования.

Var

A, X: integer;

Begin A: = 0;

Repeat {начало цикла}

Writeln (1 Значение X = ‘);

Readln (X); lfX<> 999 Then A: =A + X;

Until X = 999; {конец цикла}

Writeln (‘Сумма введенных чисел = А); Readln;

End.

  1. Откомпилируйте программу ALT F9.

  2. Запустите программу на выполнение CTRL F9.

  3. Введите произвольные числовые значения, например 34, 25009, 2, 987 и т. д., учтывая, что диапазон целочисленного типа данных integer

(-32768..32767). Для окончания работы программы последним введите число, равное 999.

  1. Просмотрите результат выполнения программы ALT F5.

Практическое задание № 5 Оператор повтора FOR

В случаях, когда число повторений может быть заранее известно, то для организации циклической обработки информации применяется оператор повтора For. Часто этот оператор повтора называют оператором цикла с параметром, так как число повторений задается переменной, называемой параметром цикла, или управляющей переменной.

Оператор For состоит из заголовка и тела цикла.

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

For < параметр цикла >: = < S1 > to < S2 > do < оператор >;

или

For < параметр цикла >: = < S1 > downto < S2 > do < оператор > ;

Где S1 и S2 - выражения, определяющие соответственно начальное и конечное значения параметра цикла;

а) For ... do - заголовок цикла, который определяет диапазон изменения значений управляющей переменной и одновременно число повторений оператора, содержащегося в теле цикла, направление изменения значений параметра цикла (возрастание - to, убывание - downto).

б) <оператор> - тело цикла, которое может быть простым или составным оператором. Оператор For обеспечивает выполнение тела цикла до тех пор, пока не будут перебраны все значения параметра цикла от начального до конечного.

  1. Примером действия оператора For может служить программа АВС5, которая выводит на экран таблицу перевода из градусов по шкале Цельсия (С) в градусы по Фаренгейту (F) для значений от 150 до 30 °С с шагом 1 градус. Перевод осуществляется по формуле: F = А * 1.8 + 32.

Program АВС5;

Uses Crt; {подключение библиотеки}

Var А: integer;

F: Real;

Begin

Clrscr; {очистка экрана}

Writeln (‘ Температура ‘) ;

For A: =15 to 30 do {начало цикла}

Begin

F:=A*1.8 + 32;

Writeln (‘ По Цельсию = ‘, A,1 по Фаренгейту = ‘, F: 5:2); End; {конец цикла}

Readln;

End.

Откомпилируйте программу и запустите ее на выполнение. Просмотрите результат выполнения программы. Сохраните программу на носитель под именем АВС5 и создайте .ехе - файл.

Если телом цикла является циклическая структура, то такие циклы называют вложенными. Цикл, содержащий в себе доутой цикл, называют внешним, а цикл, содержащийся в теле другого цикла, называется внутренним. Внешний и внутренний циклы могут быть 3 видов: циклами с предусловием While, циклами с постусловием Repeat или циклами с параметром For.

Правила организации внешнего и внутреннего циклов такие же, как и для простого цикла каждого из видов. Но при программировании вложенных циклов необходимо соблюдать следующее дополнительное условие: все операторы внутреннего цикла должны полностью располагаться в теле внешнего цикла.

  1. Напишите программу ввода натуральных чисел, которые являются совершенными (совершенное число - это число, равное сумме всех своих делителей, исключая себя самого). Контрольные данные: для В от 1 до 1000, совершенными являются числа 6,28,496. Ввод числа нуль (В = 0) означает конец ввода.

Program АВС6;

Uses crt;

VarA,B,C:integer;

Begin Clrscr;

Repeat {внешний цикл}

Writeln (1 Введите значения натурального числа-); Readln (В);

С : = 0; {обнуление значения суммы}

For А : = 1 to В -1 do {внутренний цикл}

If В mod А = 0 Then С : =С + А;

If В = С Then writeln (1 Совершенное число ‘, В: 6) Else writeln (‘ Несовершенное число ‘, В: 6);

Until В = 0; {условие окончания внешнего цикла} Readln;

End.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]