Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
W-10_Fort_68_стр_10г..doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.18 Mб
Скачать

Read(5,*) список

Под списком понимается список вводимых величин, в котором имя каждой величины отделено от следующего имени запятой. После последнего имени запятая не ставится. В примере ЕХ21 список состоит из трех переменных A,B,I. Имена их выбраны программистом по определенным правилам (в соответствии с этими правилами А и В - вещественные переменные, I - целая переменная).

Звездочка указывает на ввод под управлением списка, т.е. операционная система вводит переменные в том порядке, в каком они указаны в списке, определяя тип переменной по умолчанию. Поэтому оператор бесформатного ввода называется также оператором ввода под управлением списка.

Число в скобках при операторе READ (5,*) является кодом способа ввода исходных данных. Данные могут вводиться с дискеты, с жесткого диска, с экрана. В данном случае – пятерка (5) означает ввод с экрана. Это наиболее удобный ввод, так как все вводимые числа можно контролировать визуально.

Каждое число в записи исходных данных отделяется от следующего пробелами. Программист должен обеспечивать соответствие типов чисел в записи исходных данных и типов переменных в списке ввода. Если этого не сделать, то операционная система прекращает обработку программы и выдает сообщение об ошибке. Например, если с программой ЕХ21 будут использованы данные 3.14159 - 0.005 2240. то ЭВМ отвергнет ввод вещественного числа 2240. в ячейку I, предназначенную для хранения только целого числа.

1.2.3 Операторы вывода

В FORTRANе существует два вида операторов вывода информации из оперативной памяти компьютера:

PRINT * , «список выводимых величии»

или WRITE(n,*) «список выводимых величии»

Оператор WRITE может выводить информацию на экран, на жесткий диск или на принтер. Поэтому в написание оператора входит число n, указывающее код устройства, на которое должна выводиться информация. При n = 6 вывод осуществляется на экран, при n = 7 данные из оперативной памяти записываются на жесткий диск в файл с именем ft07f001.

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

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

Операторы вывода в тексте программы могут иметь такой формат:

PRINT*, A, B, I

или WRITE(6,*) A, B, I

В этом случае на экран выводятся копии содержимого ячеек с именами А, В, І в том порядке, в котором они записаны в списке, т.е. сначала А, потом В и наконец I - все в одну строку. Если все числа, указанные в списке, на одной строке не размещаются, то транслятор автоматически переносит часть чисел на следующую строку.

Список в операторах бесформатного вывода может отсутствовать, т.е. операторы могут иметь вид PRINT * или WRITE (6,*). В этом случае печатающее устройство одну строку пропускает, как бы печатая пустую строку из одних пробелов.

Рассмотрим пример:

PRINT*, ' ИСХОДНЫЕ ДАННЫЕ '

PRINT*

PRINT*, ' А=', А, ' В=' , В, ' І=' , І

В этом примере сначала будут напечатаны слова ИСХОДНЫЕ ДАННЫЕ, первая буква которых будет находиться на расстоянии n символов от начала строки, где n - количество пробелов между первым (открывающим)апострофом и первой буквой. С помощью второго оператора PRINT* будет получена пустая строка. Если значения переменных А, В, І принять такими же, как в предыдущем примере, то будет напечатано:

А= 3,14159 В= -0,005 І= 2240

Следует обратить внимание на то, что в рассмотренном примере в список оператора PRINT включены символьные константы. Они применяются для вывода поясняющей информации. Не следует путать вывод символьной константы с выводом содержимого ячейки. Например, оператор PRINT*,'A=' напечатает константу А= , в то время как оператор PRINT*, А напечатает значение (число), содержащееся в ячейке с именем А. Необходимо также внимательно следить за количеством и расположением апострофов: их должно быть два - перед константой и за ней.

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