Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Obschy_kurs / Fortran / Metod_Lr2_Fortran.doc
Скачиваний:
62
Добавлен:
21.02.2016
Размер:
262.14 Кб
Скачать
    1. Простой ввод/вывод

Операторы ввода и вывода (В/В) предназначены для обеспечения обмена данными между внешними устройствами и оперативной памятью компьютера.

Процесс передачи данных с внешнего устройства в оперативную память называется вводом или чтением. Основными устройствами ввода являются клавиатура и дисковый файл.

Процесс передачи данных из оперативной памяти на внешнее устройство называется выводом или записью. Основными устройствами вывода являются монитор, принтер и дисковый файл.

При вводе данные из текстового представления преобразуются во внутреннее, а при выводе – из внутреннего преобразовываются во внешнее (текстовое). При этом преобразования ввода-вывода можно задать дескрипторами (описателями) преобразований. В простейшем случае можно использовать ввод-вывод, в котором преобразования выполняются в соответствии с установленными по умолчанию правилами (бесформатный В/В). Такого рода преобразования обеспечиваются управляемым списком ввода-вывода.

В языке Фортран определены следующие операторы В/В: read,write иprint.

Операторы бесформатного ввода с клавиатуры и вывода на экран, управляемые списком, можно записать одним из следующих способов:

read (*, *) список ввода ! Ввод с клавиатуры

read *, список ввода ! Ввод с клавиатуры

write (*, *) список вывода ! Вывод на экран

print *, список вывода ! Вывод на экран

Список ввода устанавливает величины, которые нужно ввести. Элементами списка ввода могут быть только имена переменных, разделенные символом "запятая".

Список вывода устанавливает величины, которые надо вывести. Элементами списка вывода могут быть переменные и выражения любого типа и вида (константные, арифметические, логические).

Последняя или единственная звездочка в операторах означает, что В/В управляется списком (бесформатный).

В операторах, содержащих две звездочки, заключенные в скобки и разделенные запятой, первая задает устройство В/В:

- клавиатуру – для оператора read;

- экран – для операторов write иprint.

Некоторые правила бесформатноговводапод управлением списка ввода:

- в качестве разделителей вводимых с клавиатуры значений можно использовать пробел, запятую или запятую вместе с пробелом:

- ввод завершается нажатием клавиши Enter;

- каждый оператор ввода выполняет ввод с начала новой записи (запись –это строка символов, завершаемая символом ”Возврат каретки”;

- если число элементов списка больше числа полей записи, то для ввода недостающих значений оператор ввода перейдет к следующей записи;

- для ввода значения логической переменной достаточно набрать Т или F.

- символ "слэш" (/), введенный в поле записи означает конец информации, воспринимаемой данным оператором ввода.

Внимание!Операторreadприсваивает значения элементам списка в том порядке, в котором они располагаются в списке, слева направо.

Пример. Ввести значения а=2; b=5 и c =10,5

implicit none

integer :: a, b

real :: c

. . .

read *, a, b, c ! Предполагается ввод с клавиатуры значений переменных a,b, иc

. . .

Выполняем ввод с клавиатуры в виде:

2510.5! Используется одна запись (символозначает пробел)

или

2, 5, 10.5 ! Используется одна запись

или

2

5 ! Используются три записи

10 

Ввод в виде 25 / 10.5 означает, что переменныеаиbпримут соответственно значения 2 и 5, а значение для переменнойс не будет введено.

Соседние файлы в папке Fortran