Функции пользователя
Помимо стандартных функций (см. табл. 3.1) в программе пользователь может определить и далее использовать другие (нестандартные) функции. Для определения функции пользователем используется оператор DEF FN. Его синтаксическая структура:
DEF FNv[тип](X1, X2, …) = E,
где DEF(от DEFINE) - определить; FN(от FUNCTION) – фукция; v – имя функции, которое, вместе с FN и символами %, $ и др., не должно превышать 40; квадратные скобки указывают на возможность выбора типа функции; X1, X2 – простые переменные – формальные аргументы функции; E – арифметическое выражение, по которому вычисляется функция.
Арифметическое выражение в правой части может содержать (но не обязательно) формальные аргументы X1, X2,… другие переменные, общие для всей программы, а также любую комбинацию формальных аргументов в других переменных программы. Оператор DEF FN является описательным и относится к невыполняемым операторам и должен располагаться в программе до первого использования определяемой им функции, целесообразнее в начале программы.
Пример: DEF FNY(X, Y) = A * X ^ 2 + Y ^ 3
Здесь функция пользователя определена для вычисления выражения при двух формальных параметрах вещественного типа.
Вычисление функции, описанной оператором DEF FN, осуществлялся при обращении к ней по её имени с указанием в скобках фактических параметров, при которых она должна быть вычислена. В частном случае имена фактических и формальных аргументов могут совпадать.
Пример: Вычислить FNY: а) при переменных А и В; б) возвести в 3 степень при X=1, Y=0.
нс Y1 = FNY(A, B)
…
Y2 = FNY(1, 0) ^ 3
Следует помнить, что количество, порядок следования и тип фактических переменных должен соответствовать количеству, порядку следования и типу формальных переменных.
При обращении к функции пользователя фактические параметры передаются в арифметическое выражение, заменяя формальные значения. Обращение заменяется вычисленным значением.
Сложное выражение можно разбить на несколько простых, каждое из которых определяется самостоятельной функцией пользователя.
Дата добавления: 2021-12-14; просмотров: 261;