Эти
переменные могут использоваться в качестве
переменных для простых присваиваний внутри
процедур. Эти присваивания автоматически
отменяются при выходе из процедуры. Значение
такой переменной не изменяется внутри всех
подпрограмм, вызываемых из данной процедуры,
если оно не замещено локально. Другими словами,
если в подпрограммах их значения изменились, то
нет необходимости их восстанавливать, это
произойдет автоматически.
Помимо уже упомянутого Ditto
-оператора ( ", "", """ ) Maple
содержит следующие встроенные переменные
операционной среды:
Digits - задает число десятичных знаков в числах с
плавающей запятой
Normalizer - используется в степенных рядах
для упрощения коэффициентов
Testzero - используется в
степенных для выявления деления на нуль
mod - используется в арифметике по модулю m
printlevel - используется для
задания уровня вложенных подпрограмм, выводимых
на дисплей
при распечатке программы
Введем, например процедуру:
> t := proc() Digits := Digits + 5;
end:
Выполнение процедуры дает увеличение
нормального значения переменной Digits на 5:
> t();
Однако, на интерактивном уровне
значение этой переменной автоматически
возвращается к исходному нормальному значению:
> print(Digits);
Пользователь также может вводить
переменные операционной среды. Их имя должно
начинаться с лексемы _Env, за которой может
следовать любая последовательность разрешенных
для имени символов.
Теперь определим пользовательскую
переменную операционной среды _EnvX и присвоим ей
некоторое значение
> _EnvX := x^2+1;
Напишем процедуру, переопределяющую _EnvX
> p := proc() _EnvX := `polynom` end:
p();
Однако на интерактивном уровне значение
переменной _EnvX не изменилось:
> _EnvX;
|