Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metoda Informatika for zaochniki 1K.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.11 Mб
Скачать

5.2.8. Оператор вывода

Вывод информации в общем случае выполняется оператором

WRITE(m,n) список вывода

n FORMAT(список форматов)

где m,n имеют тот же смысл, как и в операторе ввода,

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

WRITE (*,*) список вывода

Список вывода может содержать не только числовые, но и текстовые переменные. Например: сообщение о делении на нуль может иметь вид:

WRITE (*,*) ‘_ Знаменатель равен 0’

5.2.9. Оператор stop

Оператор STOP указывает на окончание выполнения программы. В программе разветвляющейся структуры в каждой ветви может быть оператор STOP. Данный оператор - необязательный оператор программы.

5.2.10. Оператор end

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

5.2.11. Операторы управления

В большинстве задач результат зависит от выполнения некоторых условий и естественный порядок выполнения операторов нарушается. Для этого используются операторы управления – операторы безусловного и условного перехода.

Оператор безусловного перехода (БП) имеет синтаксис

GOTO n

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

Пробелы в записи оператора БП можно игнорировать.

Структурный условный оператор IF. В общем случае имеет следующий синтаксис:

IF(B) THEN

<последовательность операторов 1>

ELSE

<последовательность операторов 2>

ENDIF

Данный оператор работает следующим образом. Если логическое выражение В имеет значение .TRUE. (истина, Да), то выполняется последовательность операторов 1, если значение .FALSE. (ложь, Нет), то последовательность операторов 2.

THEN (то) и ELSE (иначе) – ключевые слова оператора IF (если) (ключевые слова используются для обозначения оператора или разделителя внутри него). Последовательности могут содержать любое количество операторов. Структурный оператор должен заканчиваться оператором ENDIF.

Последовательность операторов 1 и 2 может быть пустой, в этом случае никаких действий не выполняется.

Пример 1. Написать фрагмент программы вычисления z = max(x,y) для Fortran 90

* Вычисление z = max(x,y)

IF(X >= Y) THEN ! для других версий Fortran IF(X .GE.Y) THEN

Z = X

ELSE

Z = Y

ENDIF

WRITE(*,*)’ Z=’,Z

Символ “!” означает, что все знаки, расположенные после него до конца строки, рассматриваются как комментарии, а не как часть оператора.

Пример 2. Написать фрагмент программы вычисления z = min(x,y) для Fortran 90

* Вычисление z = min(x,y)

IF( X< Y) THEN ! для других версий Fortran IF(X .LT.Y) THEN

Z = X

ELSE

Z = Y

ENDIF

WRITE(*,*) Z

В частном случае оператор IF может иметь конструкцию

IF(B) THEN

<последовательность операторов>

ENDIF

Последовательность операторов может содержать другие структурные условные операторы. В этом случае каждый структурный оператор должен иметь свой оператор ENDIF.