Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
76
Добавлен:
02.05.2014
Размер:
527.87 Кб
Скачать

Вывод по спецификации Fw.D

При выводе по этому формату обязательно выводятся: знак ”–” (знак + опускается) и целая часть числа, десятичная точка и количество позиций d с дробной частью числа (выводится с округлением).

Пример:

WRITE(5,4)A

4 FORMAT(2X,’A=’,F6.3)

Врезультате на экран будет выведено:А=_ 0.123

d

w

На некоторых версиях ФОРТРАНа может быть установлено (пользователем) гашение незначащего нуля, в этом случае будет выведено:А= .123.

При выводе по формату F6.3 максимальное число, которое можно вывести это 99.999 ( для примера: А=99.999492 – выведет по этому формату; А=99.999823 – не выведет по этому формату, так как d=3, то оставшуюся дробную часть округлит и все число округлится до 100, а число 100 вывести по этому формату нельзя). Минимальное выводимое число по этому формату это –9.999.

Если ширина поля ввода больше, чем выводимое число, то число прижмется к правому краю.

Если выводимое число не может быть выведено по указанному формату(например число 100 по F6.3), то вместо числа в отведенных позициях напечатаются символы “” (для числа 100 выведет:).

Ввод по спецификации Ew.D

Общая запись спецификации Е:

Еw.d

где w– количество позиций, отведённых под число;

d– количество позиций изw, в которых размещается дробная часть числа.

Например:

READ(5,9) A,B

9 FORMAT(E9.3,2X,E7.2)

При вводе исходных данных по спецификации Е в отведенном поле должно вводиться число с плавающей запятой и в этом поле должна присутствовать латинская буква Е, которая выступает в роли показателя степени. У показателя степени буква Е может отсутсвовать, но тогда при показателе степени обязательно должен стоять символ “+” или “–“.

Пример ввода по предыдущему FORMAT(E9.3,2X,F7.2):

–12345Е+1 1234Е–1

d 2X d

w w

В результате считывания переменной А присвоится значение: А=–12.345*101, а переменной В присвоится значение: В=12.34*10–1.

Знак “+” у показателя степени можно опускать, если информация будет подготовлена следующим образом:

0123456Е2 1234Е–1

А=123.456*102В=12.34*10–1

или

0123456+2 1234–01

А=123.456*102В=12.34*10–1

или

0123456+0 1234–1

А=123.456 В=12.34*10–1

Информация, вводимая по спецификации Е, может быть подготовлена с десятичной точкой. В этом случае число читается из отведённого поля wпозиций, а параметрdне играет никакой роли (смотри аналогичное положение по спецификацииF).

Пример:

012345.Е2 .1234–1

А=12345*102В=0.1234*10–1=0.01234

Вывод информации по спецификации Еw.D

Вывод осуществляется в нормализованном виде.То есть в обязательном порядке выводится служебная информация в виде:

–0.ххх…хЕ0Y

d

w

Поэтому данные выводятся по спецификации E12.5 в не совсем обычном виде:

0 отпечатает 0.00000Е+00

1 отпечатает 0.10000Е+01

101 отпечатает 0.10100Е+03

0.0012 отпечатает 0.12000Е–02

При выводе по спецификации Е обязательнодолжно выполняться правило:

wd7

Это происходит из-за того, что 3 позиции в начале выводимой строки и 4 позиции в конце строки отводятся под вывод служебной информации.

Пример:

А= –0.1234567Е12

3 d 4

По спецификации Ew.d, выполняя условиеw-d7, можно вывести любое вещественное число. По этой причине спецификация Е используется для вывода значений, результаты которых непредсказуемы.

Для ЭВМ, у которых при установке дистрибутива программного обеспечения установлено гашение незначащего нуля,

wd6

В этом случае число 1 по спецификации Е10.3 отпечатается как .100Е+01.

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

Примеры: вывод числа 1.4878960

При выводе по Е9.1 ошибка округления может достигать 30–40%; получим 0.1E+01

при выводе по Е9.2 ошибка округления может достигать 5%; получим 0.15E+01

при выводе по Е10.3 ошибка округления может достигать 0.5%. получим 0.149E+01

Наиболее оптимальным, по мнению автора, является вывод по спецификации Е10.3, а при гашении незначащего нуля E10.4.

Соседние файлы в папке Программирование на Фортране