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

14.Оператор while

Синтаксис этого оператора:

While <выражение логического типа> do

<оператор1>;

Порядок выполнения этого оператора:

  1. Вычисляется выражение логич. типа.

  2. Если результат есть true, то выполняется оператор1, затем снова вычисляется выражение. И так эти 2 пункта повторяются, пока результат выражения не станет равным false.

  3. Если результат выражения равен false, оператор1 не выполняется, и программа переходит к выполнению операторов, расположенных далее по тексту, то есть после ;

Примечания: 1. Понятно, что возможен случай, когда оператор1 не выполнится ни разу. 2. Понятно также, что возможен случай, когда этот цикл не прекращает работы. Такой случай называют зацикливанием. 3. Если нужно, чтобы повторно выполнялась группа операторов, применяйте СОСТАВНОЙ оператор.

13.Оператор repeat

Синтаксис этого оператора:

repeat

<операторы>

until

<выражение логического типа>;

Порядок выполнения этого оператора:

  1. Выполняются (в обычном порядке) операторы, расположенные между repeat и until.

  2. Вычисляется выражение логич. типа.

  3. Если результат есть false, переходим к пункту 1, то есть повторно выполняются операторы и вычисляется выражение. И так до тех пор, пока выражение не станет = true.

  4. Если результат выражения равен true, программа переходит к выполнению операторов, расположенных далее по тексту, то есть после ;

15.Оператор for

Синтаксис этого оператора:

1-й вариант: возрастание переменной цикла.

for <переменная цикла> := <начальное значение> to

<конечное значение> do <оператор1>;

2-й вариант: убывание переменной цикла.

for <переменная цикла> := <начальное значение> downto

<конечное значение> do <оператор1>;

------- где: ----

<переменная цикла> - переменная одного из ПОРЯДКОВЫХ типов.

<начальное значение>, <конечное значение> - выражения

того же типа, что и переменная цикла.

Порядок выполнения этого оператора (1-й вариант):

  1. Переменной цикла (ПЦ) присваивается начальное значение.

  2. Значение ПЦ сравнивается с конечным значением (КЗ).

  3. Если ПЦ >= КЗ, то выполняется оператор1, затем ПЦ увеличивается на 1. Затем переходим на пункт 2, то есть сравниваем ПЦ с КЗ. Пункты 2 и 3 повторяются до тех пор, пока выполняется ПЦ >= КЗ.

  4. Если же ПЦ >= КЗ, то оператор1 не выполняется, и далее выполняется оператор, расположенный далее по тексту, то есть после >;

В отличие от предыдущих, для оператора for легко определить сколько раз выполнится оператор1.

Пример: напечатаем русский алфавит строками по 10 букв. Текст программы:

var cc: char;

begin

for cc:= 'а' to 'я' do

begin

write(cc:2); {ширина поля=2, чтобы был отступ}

if (byte(cc) - 159) mod 10 = 0 { код буквы "а" = 160 }

{ mod - остаток от деления }

then writeln; { через каждые 10 букв - новая строка}

end;

writeln('Для выхода - нажмите Enter.');

readln;

end.

Результат работы программы:   Видим, что между "п" и "р" расположены символы псевдографики - для рисования таблиц в текстовом режиме.

Внутри составного оператора, выполняемого в цикле, можно использовать процедуры break и continue - для "досрочного" прекращения повторного выполнения цикла. Обычно эти процедуры вызываются при выполнении некоторого условия, то есть совместно с оператором if. При этом выполнение процедуры break передает управление на оператор, расположенный сразу ПОСЛЕ оператора, выполняемого циклически. А выполнение процедуры continue приводит к тому, что управление передается на первый из операторов составного оператора.