Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 3_2.doc
Скачиваний:
25
Добавлен:
13.03.2016
Размер:
203.78 Кб
Скачать

3.9. Ввод-вывод

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

Внешние устройства – это монитор, клавиатура, мышь, принтер, сканер, дисководы с магнитными и оптическими носителями, флэш-карты и др. Внешнему уст­ройству можно присвоить номер. Номером устройства является целочисленное выра­жение, значение которого должно находиться в интервале от 0 до 32767. Устройства с номерами *, 0, 5 и 6 всегда связаны с каждой программой на Фортране. Причем по умол­чанию к устройствам *, 0 и 5 подсоединена клавиатура, а к устройствам *, 0 и 6 - экран.

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

Виды ввода-вывода данных

Фортран поддерживает четыре способа ввода-вывода данных:

  1. под управлением списка ввода-вывода;

  2. форматный;

  3. неформатный;

  4. двоичный.

При использовании первых двух способов происходит преобразование внешней символьной формы представления данных во внутреннее двоичное представление в соответствии с типом данных. Эти способы используются для ввода данных с клавиатуры, символьного вывода на экран или печать, а также при вводе-выводе в текстовые файлы. Неформатный и двоичный способы ввода-вывода применяются при работе с нетекстовыми файлами. При этом форма представления данных не изменяется. Далее будет говориться только о первых двух способах ввода-вывода данных.

Управляемый списком ввод-вывод

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

Различают два вида управляемого списком В/В: управляемый именованным и неименованным списком. Здесь мы будем рассматривать В/В, управляемый неименованным списком.

Ввод с клавиатуры и вывод на монитор под управлением списка. При вводе с клавиатуры данные из символьной формы преобразуются во внутреннее двоичное представление. При выводе на экран данные из внутреннего представления преобразуются во внешнюю символьную форму. Управляемые списком операторы ввода с клавиатуры и вывода на экран выглядят так:

READ(*, *) список ввода ! Ввод с клавиатуры READ *, список ввода ! Ввод с клавиатуры WRITE(*, *) список вывода ! Вывод на экран

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

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

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

Пример.

integer n

real X(200) ! Объявление одномерного массива A. print *, 'Введите n ' ! Вывод сообщения: «Введите n».

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

read *,(A(i),i=1,n) ! Для В/В используется циклический список print *, (A(i), i=1,n) ! Контрольный вывод на экран.

При выполнении программы пусть вводятся следующие значения:

  1. (значение n ),

1 2 3 (значения элементов массива, разделяемые пробелами).

Результат вывода на экран будет иметь следующий вид:

1.000000 2.000000 3.000000 .

Формат выводимых значений выбирается Фортраном по умолчанию. Ввод значений, соответствующих одному списку ввода, заканчивается нажатием клавиши ENTER.