Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ШПОРЫ ПО ИНФЕ.docx
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
220 Кб
Скачать
☆

43.Оператор цикла .Общая классификация Оператор цикла с постусловием

Оператор цикла с пост-условием применяется если во время написания программы количество повторений неизвестно. Общий вид этого оператора таков:

repeat

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

until <условие>;

Зарезервированные слова repeat и until по действию похожи на операторные скобки, вследствие этого между словами repeat и until можно поместить несколько операторов, отделяя их друг от друга точкой с запятой

Исполнение цикла повторяется до того момента, когда <условие> станет истинным.

При составлении цикла с пост-условием необходимо принимать во внимание три момента:

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

  • Условие окончания должно в конце концов быть удовлетворено.

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

Другой способ организации повторного выполнения оператора связан с использованием цикла с пред-условием. Этот оператор похож на оператор цикла с пост-условием (repeat), однако условие вычисляется и проверяется в начале цикла повторения, а не в конце. Оператор цикла с пред-условием имеет вид:

while <условие> do

<оператор>;

Тело цикла может состоять только из одного оператора. Если необходимо выполнить более одного оператора, то нужно использовать составной оператор.

Исполнение цикла повторяется до тех пор, пока <условие> истинно.

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

Ператор цикла с параметром

Если нужно выполнить некоторый оператор несколько раз, причем число повторений не зависит от результата работы оператора, лучше всего пользоваться оператором цикла с параметром. Общий вид оператора цикла с параметром таков:

for <уп> := <выражение 1> to <выражение 2> do

<оператор>;

Переменная <уп> называется управляющей переменной, или параметром цикла. Типы управляющей переменной и граничных выражений должны совпадать, и могут быть только порядковыми. Ключевое слово to оператора цикла с параметром можно заменить словом downto. Оператор будет иметь вид:

for <уп> := <выражение 1> downto <выражение 2> do

<оператор>;

В этом случае значение управляющей переменной <уп> уменьшается при каждом повторении тела цикла, а не увеличивается.

44. Оператор цикла for.

Цикл с параметром характерен тем, что количество исполняемых циклов определено в заголовке цикла при записи оператора for.

Общий вид оператора: for I := N1 to N2 do <оператор>;

где I - переменная (параметр) цикла; N1, N2 - начальное и конечное значения переменной цикла. В качестве переменной I может использовать только простую переменную, а в качестве N1, N2 могут использоваться выражения (за исключением

вещественного типа real). Параметры I, N1, N2 должны быть одного и того же скалярного типа, но не real (т.е. целого, символьного, ограниченного типа или типа "перечисление").

Переменная цикла I принимает последовательные значения

данного типа от N1 до N2.

I, N1, N2 - целого типа

В этом случае шаг изменения переменной цикла всегда равен +1:

for I := 1 to 20 do A := A + 1;

Здесь для I = 1, 2,..., 20 выполняется оператор A := A + 1.

I, N1, N2 - символьного типа

Если необходимо записать цикл по убывающим значениям параметра I от N1 до N2, то используется следующий оператор:

for I := N2 downto N1 do <оператор>;

В этом случае параметр I принимает последовательные убывающие значения данного типа от N2 до N1.

О днако с точки зрения структурного программирования такой путь не является правильным. В связи с этим во всех случаях, где возможен преждевременный выход из цикла, следует применять описанные выше операторы while и repeat. В теле оператора for могут находиться другие операторы for. Это позволяет строить циклы, содержащие внутренние циклы. Такие внутренние циклы называются вложенными.

Цикл FOR…TO(DOWNTO)…DO.