Примеры вывода чисел по спецификации I:

Тип переменной

Значение
переменной

Вывод переменной по спецификации

I2

I3

I4

Integer

23

23

23

23

Integer

127

**

127

127

Real

10.25

**

***

****

Примечание: число 10.25 является вещественным и по формату I выведено не будет.

Разделители

Разделителем оператора FORMAT может быть запятая (“,”) или символ “слэш” (“/”). Символ “слэш”, расположенный в тексте оператора FORMAT, означает переход на новую строку или новую запись. Для продолжения вывода информации в текущей строке используется символ “обратный слэш” (“\”)

Первая позиция каждой строки при выводе информации служит для управления печатью. Если в первой позиции стоит символ (пробел) или текстовый символ, то вывод осуществляется в текущей строке. При этом информация, попадающая в первую позицию, теряется. Если в первую позицию заносится “0” (ноль), то информация выводится через одну строку. Одна страница при выводе на печатающее устройство содержит 63 строки, а при выводе на экран – 25.

Пример оператора FORMAT с разделителем:

I1=123

К=10005

Print 6, I1, K

6 FORMAT ( 2X, I3 / 4X, I5 )

После выполнения оператора FORMAT на одной строке экрана будет выведен 1 пробел (1 пробел теряется) и значение I1, на следующей строке 3 пробела (1 пробел теряется) и значение K, т. е. на экране будет выведено:

123

10005

Пример оператора FORMAT с разделителем:

WRITE (5,10)

10 FORMAT (1X, ’ Введите значение х= ’ \)

READ (5,*) х

Данный блок сработает следующим образом: появится надпись «Введите значение х=». Вводимое число будет отображаться сразу после знака равно (из-за знака “обратный слэш”). Если не использовать “обратный слэш”, то вводимое число будет отображаться на следующей строке, что менее наглядно.

НЕ нашли? Не то? Что вы ищете?

Спецификация F

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

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

Fw. d

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

Пример ввода информации по спецификации F:

READ (5,11) A, B

11 FORMAT ( F6.2 , 2X, F8.4 )

Информация для ввода по спецификации F может быть представлена в 2-х формах: без десятичной точки и с десятичной точкой.

Пример ввода информации без десятичной точки:

Предположим, что на экране дисплея мы набрали следующую информацию:

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9

d=2 d=4

w=6 2X w=8

Ввод значения переменной А производится по формату F6.2. Это значит, что первое число будет читаться из первых 6 (w=6) позиций, из которых 2 последние позиции (d=2) будут считаться дробной частью вводимого числа. Переменной А присвоится значение 123.45. Затем будут пропущены два символа 6 и 7 (так как используется пропуск символов по формату 2X) и произведётся считывание значения переменной В по формату F8.4, т. е. её значение составит 8901.23450000. Последние цифры 6, 7, 8, 9 не входят в перечень описанных в операторе FORMAT полей и считываться и обрабатываться не будут.

Пример ввода информации с десятичной точкой:

В этом случае параметр d не играет никакой роли, а число читается из отведенного для числа количества позиций w.

Для спецификации F6.2 можно задавать численные данные:

–123.5

99999.

.10005

При вводе данных с десятичной точкой в виде:

1 . 2 3 4 5 6 7 8 9 0 1 2 3 . 4 5 6 7 8 9

w=6 2X w=8

Получим значения переменных А=1,2345 В=890123,4. Цифры 6 и 7 будут пропущены по спецификации 2Х. Последние цифры 5, 6, 7, 8, 9 не прочитаются, так как выходят за пределы обрабатываемых полей.

Пример вывода информации по спецификации F:

Тип
переменной

Значение
переменной

Вывод переменной по спецификации

F6.2

F5.2

F7.3

Real

12.3456

1 2 . 3 5

1 2 . 3 5

1 2 . 3 4 6

Real

-98.76

- 9 8 . 7 6

*****

- 9 8 . 7 6 0

Real

-0.100056

- . 1 0

- . 1 0

- . 1 0 0

Integer

123

******

*****

*******

Примечание: число 123 является целым – и по формату F выведено не будет.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13