Cтраница 3
Приводится описание подпрограммы-функции РХ, используемой при работе программ POLREG, SIPORG, POLILL, SIPOLI и подпрограмм MATRB и SPLINE, используемых при работе программ SPLREG, SISPRG, SPLILL и SISPIL. Описан алгоритм построения фундаментальных кубических сплайнов, используемых в этих программах. [31]
В качестве подпрограммы-функции вычисления оформляются, как правило, в тех случаях, когда выходом подпрограммы является одно значение. Подпрограмма общего вида лишена этого ограничения. Она может либо возвращать много результатов в вызывающую программу, либо не возвращать ни одного. [32]
С помощью подпрограммы-функции SEVAL можно вычислять значения сплайна после того, как его коэффициенты были определены подпрограммой SPLINE. Если по сравнению с предыдущим вызовом независимая переменная U уже не находится в том же интервале, то для разыскания нужного интервала применяется двоичный поиск. Читателю, не слишком хорошо знакомому с двоичным поиском, мы настоятельно советуем просчитать несколько примеров на руках. Разумеется, двоичный поиск не является наилучшим для всех случаев способом ( почему. [33]
При использовании подпрограммы-функции вычисления интеграла методом Симпсона нужно иметь в виду, что N должно быть больше 3 и нечетно. [34]
Используемые подпрограммы и подпрограммы-функции - внешняя подпрограмма-функция FCT ( X), составляемая пользователем. [35]
Дополнительная информация в подпрограммы-функции вводится через COMMON-блоки. В тех случаях, когда в пакете нет подпрограмм, соответствующих условиям конкретной задачи, недостающие подпрограммы составляются с учетом сохранения программных связей в пакете и включаются в состав пакета. [36]
В отличие от подпрограммы-функции тип подпрограммы SUBROUTINE не указывается. Имя подпрограммы используется только в операторе SUBROUTINE для идентификации подпрограммы и ему не может быть присвоено какое-либо значение. Формальные параметры в пределах подпрограммы должны быть уникальными. При этом формальным параметрам в подпрограмме могут присваиваться значения. В этом случае эти значения после выполнения подпрограммы передаются в вызывающую программу и присваиваются значениям соответствующих фактических параметров. [37]
Используемые подпрограммы и подпрограммы-функции - внешняя подпрограмма-функция FCT ( X), составляемая пользователем. [38]
Правила написания наименования подпрограммы-функции аналогичны соответствующим правилам записи наименований переменных. [39]
Если формальным параметром подпрограммы-функции является идентификатор подпрограммы-функции или подпрограммы, а в качестве соответствующего фактического параметра выступает идентификатор внешней стандартной функции, подпрограммы-функции или подпрограммы, то замена формального параметра производится по наименованию, а идентификатор такого фактического параметра должен быть указан в списке идентификаторов оператора внешних подпрограмм в вызывающей программной единице. [40]
Если формальным параметром подпрограммы-функции является идентификатор подпрограммы-функции, то фактическим параметром может быть идентификатор стандартной функции или идентификатор подпрограммы-функции. Формальному параметру, являющемуся идентификатором подпрограммы, соответствует в качестве фактического параметра идентификатор подпрограммы. [41]
Если формальным параметром подпрограммы-функции является идентификатор подпрограммы-функции или подпрограммы, а в качестве соответствующего фактического параметра выступает идентификатор внешней стандартной функции, подпрограммы-функции или подпрограммы, то замена формального параметра производится по наименованию, а идентификатор такого фактического параметра должен быть указан в списке идентификаторов оператора внешних подпрограмм в вызывающей программной единице. [42]
Ноли формальный параметр подпрограммы-функции является простой переменной, то замена его фактическим параметром может быгь выполнена по наименованию. [43]
Если формальным параметром подпрограммы-функции является имя переменной или имя массива, то в качестве соответствующего фактического параметра указателя функции может использоваться символьная константа. Эта константа помещается в оперативную память с границы двойного слова и будет занимать столько байтов, какова длина этой константы. [44]
Чем заканчивается выполнение подпрограммы-функции. [45]