Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GRIGOREV.DOC
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
608.26 Кб
Скачать

2.7. Оператор соntinue. Операторы перехода. Условные операторы

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

Оператор перехода в языке FORTRAN имеет три разновидности: безусловный, вычисляемый и по предписанию. Безусловный оператор перехода записывается в виде:

GOTO метка

Вычисляемый оператор перехода:

GOTO (список меток)целое выражение

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

GOTO целая переменная

Этой целой переменной предварительно должна быть присвоена одна из меток программы специальным оператором:

ASSIGN метка TO переменная

Целочисленная переменная, которой оператором ASSIGN была присвоена метка, допускает еще одно применение - ее можно использовать в операторах READ и PRINT вместо метки формата. Обратите внимание, что обычный оператор присваивания переменная=метка в этом случае не годится.

Условный оператор IF в языке FORTRAN также имеет три формы: логический IF, арифметический IF и блочный IF. Логический оператор IF записывается в виде:

If (логическое выражение)оператор

Здесь оператор - это любой выполняемый оператор, кроме логического и блочного IF. Логический IF содержит только один исполняемый оператор и не имеет ELSE-конструкции, его используют в самых простых условных алгоритмах. Вторая форма условного оператора - арифметический оператор IF :

If (арифметическое выражение)метка1,метка2,метка3

Он выполняется следующим образом: вычисляется арифметическое выражение (оно не должно быть комплексным), если его значение отрицательно, то осуществляется переход на метку метка1, если оно равно 0, то осуществляется переход на метку метка2, и если оно положительно - на метку метка3.

Блочный оператор IF является обобщением логического условного оператора и соответствует по своим возможностям и структуре условным операторам в языках PASCAL и C :

IF(логическое выражение)THEN

операторы

ELSEIF(логическое выражение)THEN

операторы

...................................

ELSE

операторы

ENDIF

Формально ELSEIF, ELSE и ENDIF являются отдельными операторами и обязательно должны записываться в отдельной строке. Последовательности операторов после IF, ELSEIF, ELSE называют соответственно IF-блоком, ELSEIF-блоком и ELSE-блоком. В любом из блоков можно записать любое количество операторов. Операторы ELSEIF и ELSE могут отсутствовать, но оператор ENDIF обязателен. Операторы, входящие в блоки, сами могут быть условными, что позволяет записывать сколь угодно сложные условные конструкции.

Оператор выбора SELECT CASE аналогичен оператору CASE в языке PASCAL:

SELECT CASE(выражение)

CASE(список значений)

операторы

........................

CASE DEFAULT

операторы

END SELECT

Выражение должно иметь целый, логический тип или тип CHARACTER*1. Список значений состоит из константных выражений соответствующего типа, разделенных запятыми или двоеточиями, например:

SELECT CASE (i**2+3-m)

CASE (-10:1,3,12,22:40)

PRINT*,'A'

CASE (-30:-15,8:10,19,-12)

GOTO 111

CASE DEFAULT

GOTO 222

END SELECT

В любом месте программы можно использовать оператор

STOP [параметр]

который прекращает выполнение программы. Здесь параметр - либо пусто, либо строка символов, либо целая константа в диапазоне от 0 до 99999. Если оператор используется без параметра, то на экран выдается сообщение STOP - Program terminated. Если параметр задан строкой символов, то на экран выводится только эта строка. Если параметр задан целой константой, то выводится сообщение Return code константа.

Оператор PAUSE служит для временной приостановки выполнения программы и имеет точно такой же синтаксис, как и оператор STOP. Если оператор выполнен без параметра, то на экран выводится сообщение Pause - Please enter a blank line (to continue) or a DOS command . Если задан параметр - символьная строка, то выводится эта строка, если задан параметр - константа, то выводится сообщение Pause - константа. После этого пользователь может совершить одно из трех действий: ввести пустую строку, ввести любую команду DOS или ввести слово COMMAND, затем любое количество команд DOS, а затем команду EXIT. После выполнения этих операций выполнение программы продолжается обычным образом.

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