Целочисленное деление отбрасывает дробную часть:7 / 2 равно 3. Чтобы получить дробный
результат, сделайте одну сторону Real: 7 / 2.0 или n * 1.0 / d.
Остаток: оператора % нет. MathMod(n, d) берёт знак делителя, поэтому MathMod(-30, 360)
равно 330 (то, что нужно для зацикливания угла или индекса). Для остатка со знаком n, как в
C, используйте n - (n / d) * d.
Деление на ноль даёт 0 и не останавливает скрипт. Проверяйте делитель сами, если 0 был бы
вводящим в заблуждение ответом.
Integer становится Real, когда встроенная функция объявляет Real.MathSqrt(16) — это
MathSqrt(16.0). Обратного не бывает никогда: Real, переданный туда, где объявлен Integer,
останавливает действие с ошибкой аргумент 1 имеет неверный тип, поэтому сначала округлите его
через MathRound, MathFloor или MathCeil.
MathAbs, MathMin, MathMax, MathClamp и MathMod принимают любой из двух типов и
возвращают выигравший аргумент в его собственном типе (MathMod: Integer, только если оба
аргумента Integer). При равенстве возвращается первый аргумент. MathAtan2(y, x) принимает любой
из двух типов и возвращает Real.
MathRandom(min, max) включает оба конца диапазона и останавливает действие, если min > max.
Встроенные функции Math никогда не возвращают NaN или бесконечность. Встроенная функция Math,
получившая такое значение или не имеющая конечного ответа, возвращает 0 (0.0, если результат —
Real): MathSqrt отрицательного числа, MathLog нуля или меньше, результат MathPow, не
являющийся конечным, MathFloor, MathCeil или MathRound от NaN. MathFloor, MathCeil и
MathRound от конечного значения за пределами диапазона Integer дают наибольшее или наименьшее
Integer.
Результаты Real при превращении в Text показывают шесть знаков после запятой. Для показа
округляйте.
Тригонометрия работает в радианах: rad = deg * MathGetPi() / 180.
Целочисленная арифметика, выходящая за пределы ±9,2 × 10¹⁸, переходит на другой конец диапазона:
наибольшее Integer плюс один — это наименьшее Integer. Ошибки нет. Держите значения в диапазоне.