ВВЕДЕНИЕ В ФОРТРАН
Как пользоваться этим руководством.
Концепция данных Фортрана.
Типы и буквальные константы.
Имена (идентификаторы).
Переменные и константы.
Скаляры и массивы.
Именование данных.
Печать текста и чисел на экран.
Hello World!
Печать целых чисел.
Печать вещественных чисел.
Печать текста.
Когда format предпочтительней.
Арифметические и текстовые выражения.
Арифметические операторы и правила.
Вещественная арифметика.
Целая арифметика.
Смешанная арифметика.
Текстовые выражения.
Инициализация переменных и констант.
Оператор присваивания.
Инициализация скалярных констант.
Инициализация массивов констант.
Ввод данных с клавиатуры.
DATA-инициализация скалярных переменных.
DATA-инициализация массивов переменных.
Условные опреаторы.
Логические выражения.
Оператор IF.
Конструкция IF.
Конструкция CASE.
Циклы.
Цикл с фиксированным числом повторений.
Цикл с выходом по условию.
Пресловутый GOTO.
Неявные циклы.
Процедуры и функции.
Подпрограммы-процедуры.
Подпрограммы-функции.
Комплексный пример: сортировка массива.
Встроенные функции Фортрана.
Работа с внешними файлами.
Файловый ввод/вывод.
Открытие/закрытие файла.
Позиционирование файла.
КОГДА ОПЕРАТОР FORMAT ПРЕДПОЧТИТЕЛЬНЕЙ.
Рассмотрим таблицу характеристик гипотетического объекта "отрезок":Объект:Отрезок; Ед. изм.: м; Порядковый номер: 12 из 345 Нач. коорд:6.7 м; Кон. коорд:8.9 м; Длина:2.2 м;
Эту таблицу печатает программа FMTOUT, в качестве демонстрации возможностей форматного вывода.
program FMTOUT ! ФОРМАТНЫЙ ВЫВОД ПАРАМЕТРОВ ОБЪЕКТА "ОТРЕЗОК" integer number, total real length, xmin, xmax character object*8, unit*2 number = 12 ! номер объекта (из) total = 345 ! общего числа объектов object = 'Отрезок;'! имя объекта unit ='м;'! единица измерения xmin = 6.7 ! начальная точка xmax = 8.9 ! конечная точка length = xmax - xmin ! длина c Печать с указанием формата в операторе "print" print'(1x,''Объект:'',a8,'' Ед. изм.:'',a3/1x, ^^^^^a ''Порядковый номер:'',i3,'' из '',i3/1x, b ''Нач. коорд:'', f3.1, a3,'' Кон. коорд:'',f3.1, a3, c '' Длина:'',f3.1, a3)', d object, unit, number, total, xmin, unit, xmax, unit, length, unit c Или печать с использованием оператора "format" print 100, object, unit, number, total, xmin, unit, xmax, unit, x length, unit 100 format(1x,'Объект:',a8,' Ед. изм.:',a3/1x,'Порядковый номер:',i3, y ' из ',i3/1x,'Нач. коорд:', f3.1, a3,' Кон. коорд:',f3.1, a3, z ' Длина:',f3.1, a3) end
Текстовые константы, если они являются не самостоятельными данными, а поясняющим текстом, обычно помещают непосредственно в список спецификаций формата. Это позволяет не смешивать собственно выходные данные и вспомогательную информацию, каковой являются спецификации формата.
Поскольку при написании текстовых констант используются апострофы, то на них распространяется правило записи апострофов: если последовательность символов, заключенная в апострофы при этом сама содержит апострофы, то каждый внутренний апроф должен быть сдвоен. При этом не следует путать сдвоенный апостроф с "кавычками".
Поскольку в операторе PRINT спецификации формата заключаются во внешние обрамляющие апострофы то это влечет сдваивание всех апостофов текстовых констант, включенных в список спецификаций формата.
В операторе FORMAT спецификации формата заключены только в круглые скобки. Что исключает появление лишних апострофов и улучшает читаемость. Единственным минусом в данном случае является использование метки. Завзятым эстетам, не признающим метки, как факт программирования ни что не мешает насладиться рябью апрстрофов в безметочных конструкциях вывода данных.