Научная литература
booksshare.net -> Добавить материал -> Математика -> Боглаев Ю.П. -> "Вычислительная математика и программирование " -> 28

Вычислительная математика и программирование - Боглаев Ю.П.

Боглаев Ю.П. Вычислительная математика и программирование — Высшая школа, 1990. — 546 c.
ISBN 5-06-00623-9
Скачать (прямая ссылка): vychmatiprog1990.djvu
Предыдущая << 1 .. 22 23 24 25 26 27 < 28 > 29 30 31 32 33 34 .. 168 >> Следующая

позиции: 12345678901234567
числа: 7 +7.5 — 1.1Е2
спецификации: 12 F6.3 Е9.2
Если набрать по-иному, например позиции: 12345678901234567
числа: 7 7.5 — 1.1Е2
спецификации: 12 F6.3 Е9.2
то введутся числа К = 70; А = 7,5; В(3)= —1,1 • Ю20
Прежде чем перейти к примерам вывода, следует отметить, что при выводе на устройства, требующие управления кареткой (дисплей, АЦПУ), первый символ выводимой информации не печатается, а используется для управления расположением строк по вертикали. Если этого не учитывать, то может произойти потеря информации. Поэтому при выводе в соответствующих операторах FORMAT всюду проставлены символы 2Х, что означает два пробела, из которых один пробел интерпретируется как управляющий—переход на новую строку перед печатью. Управляющий символ задается в операторе формата символьной константой. Управляющие символы:
—переход на новую строку перед печатью,
0 — пропуск двух строк перед печатью,
1—переход на новую страницу,
Н текущая строка печатается на предыдущей.
Оператор вывода может не содержать списка выводимых чисел, а только ссылку на оператор FORMAT. Таким образом выводятся текстовые сообщения на терминал или АЦПУ. Например, вывод
WRITE (5,1)
1 FORMAT (0',5Х, ТАБЛИЦА ЗНАЧЕНИЙ)
приведет к пропуску двух строк перед печатью на терминале; начиная с 6-й позиции будет напечатано: ТАБЛИЦА ЗНАЧЕНИЙ
73
Рассмотрим пример вывода значений переменных К, А, В(3) на АЦПУ (номер устройства—6). Оператор вывода может быть следующим:
WRITE (6, 3) К, А, В(3)
3 FORMAT (2Х, 14, 2Х, F6.2, 2Х, Е10.2)
Предположим, что значения этих переменных К =—372; А = = 3,7 10“2; В(3) = 2,5 • 10~5. Тогда на АЦПУ выведется строка:
позиции: 1234567890123456789012345
числа: —372 0.04 0.25Е —04
спецификации: 14 F6.2 ЕЮ.2
В примере доказано, что при выводе значений переменных числа округляется так, чтобы они поместились в заказанный формат. Если число не может быть размещено в заданном формате, оно ;не выводится, а во всех его позициях печатается символ *. Если в примере значение К =—3721, то четырех позиций для вывода этого числа недостаточно, поэтому на АЦПУ в первых пяти позициях были бы следующие символы:
позиции: 123456
числа: ****
спецификации: 14
При вводе и выводе спецификации в операторе FORMAT можно повторять, указывая число повторений перед этой спецификацией. Например, вывод значений трех переменных А, В, С можно осуществить с повторением:
WRITE (5,8 12) А, В, С 12 FORMAT (2Х, ЗЕ11.4)
На терминал будут выведены три числа в 33 позиции одной строки.
Если при вводе (выводе) все спецификации оператора FORMAT уже использованы, но не всем переменным списка присвоено значение (не все выведены), то использование спецификаций в нем повторяется начиная с первой. Например, вывод значений трех переменных А, В, С
WRITE (5, 10) А, В, С 10 FORMAT (2Х, Е11.4)
осуществится на терминал в строки по 11 позиций в каждой.
Вывод текстовой информации совместно с числовой более предпочтителен, так как поясняет смысл выведенных значений. Например, вывод значений, А, В, С таким образом, чтобы перед числами стояли сймволы А = , В = , С = , осуществляется следующими операторами:
WRITE (5, 1) А, В, С 1 FORMAT (2Х, ,А = /, Е11.4, ,В = /, Е11.4, ,С = /, Е11.4)
Ввод чисел с текстовой информацией часто называют вводом с приглашением, который состоит в том, чтобы перед вводом
74 \
V.
на терминале выводились символы тех переменных, для которых следует ввести значения, а затем на клавиатуре набиралось бы вводимое число. Это можно организовать при помощи четырех операторов, например
WRITE (5,1)
1 FORMAT ( А= )
READ (5,10) А 10 FORMAT (F6.3)
Если при вводе (выводе) необходимо перейти на следующую строку, то ставится знак/. Например, вывод в три строки предыдущего примера осуществляется операторами
WRITE (5,1) А, В, С 1 FORMAT (2Х, 'А = \ Е11.4/'В = ', Е11.4/'С = ', Е11.4)
На терминал будут выведены три строки:
А = ...
В = ...
С = ...
Ввод (вывод) массива осуществляется разными способами.
В простейшем варианте указывается имя массива (без индекса) в вводном (выводном) списке. Например, пусть необходимо ввести двумерный массив вещественных чисел
REAL В(2,3)
Тогда операторы ввода могут быть, например, такими:
READ (5,1)В 1 FORMAT (2F4.1)
Пусть необходимо ввести матрицу
При ввоДе с терминала согласно приведенным выше операторам (и вспоминая, что в памяти ЭВМ матрица размещается по столбцам) необходимо напечатать числа следующим образом: 0
2-я строка: —3.0 4.0
3-я строка: 5.0 —6.0
Простейшая форма ввода (вывода) массива крайне неудобна, когда размерность массива может быть переменной. В этом случае применяется ввод (вывод) с помощью неявного цикла (см. п. 3.2.8).
Место оператора FORMAT в структуре программы строго не определено, он может находиться в любом месте, а не обязательно в следующей строке за оператором ввода (вывода). Заметим
позиции: 1 234 5 678
1-я строка: 1.0 2.0
75
также, что один оператор FORMAT могут использовать несколько операторов ввода (вывода), например
READ (5, 1) А 1 FORMAT (2Х, Е13.6)
Предыдущая << 1 .. 22 23 24 25 26 27 < 28 > 29 30 31 32 33 34 .. 168 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed