|
Основной
способ задания функции пользователя
Более гибкий способ задания полноценных
функций пользователя базируется на применении функционального оператора. При
этом используется следующая конструкция:
name:=(x,y,...)->expr
После этого вызов функции осуществляется
в виде name(x.y,...), где (х.у,...) — список формальных
параметров функции пользователя с именем name. Переменные,
указанные в списке формальных параметров, являются локальными. При подстановке
на их место фактических параметров они сохраняют их значения только в теле функции
(ехрr). За пределами этой функции переменные с этими .
именами оказываются либо неопределенными, либо сохраняют ранее присвоенные им
значения. Следующие примеры иллюстрируют сказанное:
Нетрудно заметить, что при вычислении
функции m(х.у) переменные х и
у имели значения 3 и 4, однако за пределами функции они сохраняют нулевые значения,
заданные им перед введением определения функции пользователя. Еще один способ
задания функции пользователя базируется на применении функции
unapply: name:=unapply(expr.varl.var2,...) Ниже даны примеры такого задания
функции пользователя:
Последний пример показывает возможность
проведения символьных операций с функцией пользователя.
|