Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shp.doc
Скачиваний:
17
Добавлен:
18.09.2019
Размер:
5.46 Mб
Скачать
  1. Операторы циклов в языке Паскаль. Примеры использования.

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

  • цикл со счетчиком (цикл «для» - for… to / downto);

  • цикл с предусловием (цикл «пока» - while);

  • цикл с постусловием (цикл «до тех пор, пока» - repeat…until).

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

Цикл со счетчиком.

В тех случаях, когда число повторений заранее определено, удобно использовать оператор For..To..Do. Данный оператор имеет встроенный счетчик и может использовать шаг либо «+1» либо «-1». В случаях если мы вычисляем от меньшего к большему, то используется вид For..To..Do. Если от большего к меньшему изменяется счетчик, то используется вариант For…Downto..Do. Общий вид оператора: For (переменная):=нач. значение…to (downto) конечное значение do.

Program summa;

Const n=100;

Var i:integer; sum:Real;

Begin

Sum:=0;

For I:=1 to n do

sum:=sum+1/I;

Writeln (‘Summa’,n,’elementov=’,sum:10:5);

End.

Цикл с предусловием

Общий вид оператора:

while условие do (Эта часть называется заголовком цикла)

оператор; (Эта часть называется телом цикла)

Телом цикла может быть и группа операторов, заключенная в операторные скобки begin… end (то есть составной оператор).

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

В теле цикла должны быть операторы, которые в какой-то момент изменят значение условия, сделав его ложным. Если этого не случается, цикл будет бесконечным. Цикл работает пока условие выполняется. Это цикл с предусловием, в котором есть возможность не выполнять тело ни разу.

Н-р. Задача о вычислении суммы.

Program summa;

Const n=100;

Var i:integer; sum:Real;

Begin

Sum:=0;

I:=1;

While I<=n do

Begin

sum:=sum+1/I;

I:=I+1

End;

Writeln (‘Summa’,n,’elementov=’,sum:10:5);

End.

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

Общий вид оператора : repeat группа операторов until условие;

Здесь вначале выполняются группа операторов, а потом производится проверка, следует ли вновь повторить эту группу. Если условие ложно, выполнение цикла повторяется, иначе – заканчивается.

Решение предыдущей задачи о суммировании .

Program summa;

Const n=100;

Var i:integer; sum:Real;

Begin

Sum:=0;

I:=1;

repeat

sum:=sum+1/I;

I:=I+1;

Until I>n;

Writeln (‘Summa’,n,’elementov=’,sum:10:5);

End.

Слова Repeat и until являются зарезервированными, как впрочем, и слово while . В отличие от цикла while операторы внутри цикла repeat выполняются хотя бы один раз, в то время как в цикле while они могут не выполняться ни разу. Данный оператор используется в тех случаях , когда число повторений заранее не определено, а определяется условием в процессе выполнения работы.

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