Типовой пример

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

В языке ТР имеются три различных оператора, с помощью которых организуются циклические (повторяющиеся) фрагменты программ.

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

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

While <условие> Do <оператор>;

Где <условие> - логическое выражение.

Если логическое выражение принимает значение TRUE (истина), то выполняется оператор, стоящий после ключевого слова Do, в противном случае оператор While прекращает свою работу. На месте одного оператора может располагаться группа операторов, заключённых в операторные скобки (Begin ... end).

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

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

Repeat <Тело_цикла> Until <условие>

где <Тело цикла> - последовательность операторов ТР;

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

Операторы "тела цикла" выполняются хотя бы один раз, после чего

вычисляется значение логического выражения и если это значение FALSE,

то операторы "тела цикла" повторяются, в противном случае оператор

цикла завершает свою работу.

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

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

For <параметр_цикла> := <нач.знач.> To < конеч.знач.> Do <оператор>;

где <параметр_цикла> - переменная любого порядкового типа;

<нач.знач.> - начальное значение - выражение того же типа;

<конеч.знач.> - конечное значение - выражение того же типа;

На месте одного оператора может располагаться группа операторов, заключённых в операторные скобки (Begin ... end).

Для более гибкого управления операторами циклов For, While, Repeat в ТР введены две процедуры:

BREAK- реализует немедленный выход из цикла; действие процедуры заключается в передаче управления оператору, стоящему сразу за после последнего оператора цикла.

CONTINUE- обеспечивает досрочное завершение очередного прохода цикла, что эквивалентно передаче управления в самый конец циклического оператора.

 

 

Лабораторная работа

 

Циклические алгоритмы и программы

Цель работы:

1. Построение схем циклических алгоритмов;

2. Использование операторов циклов (повторений):

 

Типовой пример

Составить схему алгоритма и программу для вычисления значений

функции Y для значений переменной х, изменяющейся в интервале от a до b

с заданным шагом h.

Решение

Так как в языке Pascal нет стандартной функции извлечения корня любой степени кроме квадратного, для вычисления функции Y воспользуемся переходом к функциям Exp и Ln.

При программировании необходимо учесть, что выражение, стоящее под знаком Ln, может быть только положительным: (6x2-x3) > 0.

Исходными данными в этой задаче являются значения a,b и h.

Начальное значение х принимаем равным а (х:=а). Каждое следующее значение х вычисляется по формуле х:=х+h. Вычисления функции Y для новых значений х заканчиваются, когда значение х становится больше, чем заданное значение b.

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

Вариант 1