"автор неизвестен "MS-фортран, описание языка"" - читать интересную книгу автора

Применяются следующие метакоманды:
$[NO]DEBUG $PAGESIZE
$DO66 $STORAGE
$INCLUDE $[NOT]STRICT
$LINESIZE $SUBTITLE
$[NO]LIST $TITLE
$PAGE
см.гл.6. "Метакоманды мS-фортрана".


1.2 Программы и транслируемые части программ


Транслятор MS-фортрана обрабатывает программные единицы.
Программной единицей может быть головная программа, подпрограмма
или подпрограмма-функция. Вы можете транслировать каждую из этих
единиц отдельно и позже соединять их вместе без ретрансляции их в
целом.
1.Программа
- любая программа, у которой операторы FUNCTION (для подпрограммы
-функции) или SUBROUTINE (для подпрограммы) не являются первым
оператором. Первым оператором может быть оператор PROGRAM, но та-
кой оператор не обязателен. Выполнение программы всегда начинает-
ся с первого выполняемого оператора в головной программе. Должна
быть одна и только одна головная программа в каждой выполняемой
программе.
2.Подпрограмма
- программная единица, которая может быть вызвана из другой прог-
раммной единицы оператором CALL. Во время вызова подпрограмма вы-
полняет ряд действий, определяемых ее выполняемыми операторами, и
затем возвращает управление оператору, непосредственно следующему

- 8 -
за оператором вызова. Подпрограмма не возвращает прямо значения,
они возвращаются в вызывающую программную единицу через аргументы
или простые переменные.
3.Подпрограмма-функция
- программная единица, на которую ссылаются в выражении. Подпрог-
рамма-функция прямо возвращает значения, которые используются в
вычислении в этом выражении, и, в общем, может возвращать значе-
ния через аргументы. Есть 3 типа подпрограмм-функций: внешняя,
внутренняя и операторная (функция-оператор не может вычисляться
отдельно).
Подпрограмма и подпрограмма-функция позволяют строить прог-
раммы сложной структуры, которые могут быть разбиты на части. Это
выгодно в следующих ситуациях:
1. если программа большая, разбиение ее на части делает бо-
лее легким построение, проверку и эксплуатацию.
2. если программа большая и часто требуется повторная
трансляция, разбиение ее на части экономит время вычисления.