1.10. ОПЕРАТОРЫ ЦИКЛА.

Операторы цикла предназначены для многократного выполнения некоторых операторов. Эти операторы называются телом цикла.

Различаются операторы цикла с предусловием и с постусловием. Блок-схемы операторов цикла показана на рисунке 1.2. Переменные, значения которых меняются в теле цикла, называются переменными цикла или параметрами цикла. Для того чтобы правильно реализовать циклический алгоритм, до входа в цикл переменным цикла необходимо задать соответствующие значения, называемые начальными значениями. В зависимости от того, при каком именно значении логического выражения U (ложь или истина) выполнение цикла завершается, возможны два вида оператора цикла с предусловием(рис.1.3.а) и два – с постусловием (рис.1.3.б) .  Алгоритм цикла можно реализовать с помощью оператора перехода GOTO и метки.

Закрыть

Рисунок 1.3.а. Блок-схема операторов цикла с предусловием

Закрыть

Закрыть

Закрыть

Рисунок 1.3.б. Блок-схема операторов цикла с постусловием

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

Все языки программирования высокого уровня имеют специальные операторы цикла. В Фортране имеется два оператора цикла с предусловием: оператор DO и оператор DO WHILE.

Закрыть

ПРИМЕР:

Составить программу, которая по заданным значениям A и B вычисляет значение переменной С по правилу: C равно разности A и B , если A больше B, иначе равно разности между B и A.

       На рисунке 1.3. показан текст программы, записанной в фиксированном формате.

Рисунок 1.3. Программа с оператором GOTO и меткой

ЗАДАНИЕ:

1)             Изменить программу так, чтобы значение переменной A задавалось с клавиатуры. Проверить работу получившейся программы.

2)             Записать программу в свободном формате и проверить ее работу.

Оператор цикла DO предназначен для многократного выполнения операторов, находящихся между заголовком оператора DO и оператором CONTINUE с меткой или оператором END DO.

 

Рисунок 1.2. Блок-схема операторов цикла с предусловием (а) и постусловием(б); U –  логическое выражение..

 

 Оператор CONTINUE не порождает каких-либо команд и используется для завершения оператора цикла или для ссылок в программе. Этот оператор часто называют пустым оператором. 

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

DO N[,] I=M1, M2, M3

Здесь N – метка последнего оператора тела цикла (оператора CONTINUE); I – переменная целого, вещественного или вещественного двойной точности типа, которая называется параметром цикла, M1, M2, M3 – константы, переменные или арифметические выражения целого, вещественного или вещественного двойной точности типов. После метки N может стоять необязательная запятая. Величина M1 определяет начальное значение параметра цикла, M2 определяет конечное значение параметра цикла, а определяет шаг изменения параметра цикла.