Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция программирование для студентов.doc
Скачиваний:
5
Добавлен:
04.11.2018
Размер:
266.75 Кб
Скачать

Операторы цикла

Цикл – это многократно повторяемая последовательность действий (операторов).

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

Особенность операторов цикла: повторяющиеся записи записываются один раз.

В TP существует 3 вида операторов цикла:

1. Цикл с параметром (счетчик)

Используется тогда, когда точно известно сколько раз должна повторяться циклическая часть.

Формат записи: for i:=a to b do <тело цикла>;

где i – параметр цикла, a – начальное значение, b – конечное значение, <тело цикла> - последовательность повторяющихся действий.

Условие: a<b или a≤i≤b, I должно быть стандартного типа, кроме real; a,b должны быть одного типа.

Направление изменения значения параметра цикла определяется с помощью зарезервированных слов to – возрастание, downto – убывание.

Принцип действия: Переменная i последовательно принимает значения от a до b с шагом 1. Для каждого из значений i выполняется тело цикла, которое может быть составным оператором.

Цикл с параметром может быть реализован 2 способами:

I способ.

i:=a;

1: if i≤b then

begin

<тело цикла>;

i:=i+1;

end;

goto 1;

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

II способ.

for i:=a to b do

<тело цикла>;

end;

2. Цикл с предварительным условием (с предусловием, цикл «Пока»)

Цикл с предусловием используется тогда, когда заранее неизвестно число повторений цикла. В TP используется оператор while.

Формат записи: while <условие> do <тело цикла>

пока <условие> выполнить <тело цикла>

While, do – служебные слова

Принцип действия: предварительно проверяется значение логического выражения (условия). Пока оно истинно, выполняется тело цикла. Как только оно становится ложным, происходит выход из цикла. Если с самого начала значение логического выражения ложно, то тело цикла не выполняется ни разу.

Если <тело цикла> состоит из нескольких операторов, то их следует заключить в операторные скобки.

Задача. Вычислить 10! с помощью цикла с предварительным условием.

Program factorial;

var f,n: integer;

begin

f:=1; {начинаем с 1}

n:=1; {начальное значение для цикла}

while n<=10 do

begin

f:=f*n; {вычисление факториала}

n:=n+1;

end;

writeln (’10!=’,f);

end.

3. Цикл с постусловием.

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

Цикл с постусловием применяется при необходимости выполнить какое-либо вычисление несколько раз до выполнения некоторого условия.

Особенность цикла: цикл выполняется хотя бы один раз, т.к. первая проверка условия выхода из цикла происходит после того, как тело цикла выполнено.

В языке TP для данного цикла существует оператор:

Ф

repeat, until – служебные слова

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

(повторить)

Repeat

<тело цикла>

(до тех пор)

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

Принцип действия: операторы тела цикла выполняются (хотя бы один раз) до тех пор, пока значение логического выражения ложно. Сначала выполняется тело цикла, затем проверяется условие. Прекращается цикла, как только значение логического выражения становится истинным. Так как repeat и until играют роль операторных скобок, то использование служебных слов begin и end не обязательно.

Задача. Вычислить значение функции y=x2 при x=8,6,4,2

Начальное значение x=8. (Внутри цикла выполняется вычисление функции при текущем значении x; выводятся на экран значения x и y; вычисляется новое значение x путем вычитания числа 2 из предыдущего значения x. Тело цикла повторяется до тех пор, пока условие x=0 не станет истинным)

Program f;

var x,y: integer;

begin

x:=8; {начальное значение =8}

repeat

y:=sqr(x);

x:=x-2;

writeln(x,’ ‘,y);

until x=0;

end.