Axiom Справочник языка

Справочник языка

Корни, степени, логарифмы и округление

Математические функции этого раздела делятся на два круга задач. SQR, CBRT, EXP, LOG, LOG10, LOG2 и POW вычисляют нелинейные зависимости и возвращают DOUBLE, а FLOOR, CEIL, ROUND и FIX сводят дробное значение к целому по выбранному правилу. Ограничения области определения у первых и направление округления у вторых определяют, какой результат получится на границе.

SQR

Функция SQR возвращает квадратный корень числа, выполняя это математическое преобразование непосредственно в числовом выражении. Вызывать её можно в выражении консольной или графической программы; оператор SCREEN или CANVAS не требуется.

Синтаксис

SQR(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Результат имеет тип DOUBLE; числовой аргумент предварительно преобразуется в DOUBLE.

Правила и ограничения

Аргумент должен быть неотрицательным.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента. Аргумент меньше нуля вызывает MB3007. MB3008 возникает, если результат не является конечным DOUBLE.

Пример

PRINT SQR(0)
PRINT SQR(81)

Ожидаемый вывод:

0
9

См. также

Указатель встроенных функций

CBRT

CBRT возвращает кубический корень числа и выполняет это преобразование непосредственно в числовом выражении. Вызов допустим в выражении консольной и графической программы; оператор SCREEN или CANVAS не нужен.

Синтаксис

CBRT(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Результат имеет тип DOUBLE; числовой аргумент предварительно преобразуется в DOUBLE.

Правила и ограничения

Отрицательные числа допустимы.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента. MB3008 возникает, если результат не является конечным DOUBLE.

Пример

PRINT CBRT(-8)
PRINT CBRT(0)

Ожидаемый вывод:

-2
0

См. также

Указатель встроенных функций

EXP

EXP возвращает значение экспоненты e в степени аргумента. Функция выполняет это математическое преобразование непосредственно в числовом выражении; вызывается она в выражениях консольных и графических программ, оператор SCREEN или CANVAS не требуется.

Синтаксис

EXP(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Результат имеет тип DOUBLE; числовой аргумент предварительно преобразуется в DOUBLE.

Правила и ограничения

Большие положительные аргументы могут переполнить DOUBLE; очень малые результаты могут округлиться к нулю.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента. MB3008 возникает, если результат не является конечным DOUBLE.

Пример

PRINT EXP(0)

Ожидаемый вывод:

1

См. также

Указатель встроенных функций

LOG

Функция LOG возвращает натуральный логарифм числа и выполняет это преобразование прямо в числовом выражении. Вызывать её можно в выражении консольной или графической программы, оператор SCREEN или CANVAS не нужен.

Синтаксис

LOG(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Результат имеет тип DOUBLE; числовой аргумент предварительно преобразуется в DOUBLE.

Правила и ограничения

Аргумент должен быть строго положительным; основание логарифма равно e.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента. Аргумент, равный нулю или меньше нуля, вызывает MB3007. MB3008 возникает, если результат не является конечным DOUBLE.

Пример

PRINT LOG(1)

Ожидаемый вывод:

0

См. также

Указатель встроенных функций

LOG10

LOG10 возвращает десятичный логарифм числа, вычисляя его непосредственно в числовом выражении. Функция работает в выражениях консольных и графических программ; оператор SCREEN или CANVAS не требуется.

Синтаксис

LOG10(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Результат имеет тип DOUBLE; числовой аргумент предварительно преобразуется в DOUBLE.

Правила и ограничения

Аргумент должен быть строго положительным; основание равно 10.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента. Аргумент, равный нулю или меньше нуля, вызывает MB3007. MB3008 возникает, если результат не является конечным DOUBLE.

Пример

PRINT LOG10(100)

Ожидаемый вывод:

2

См. также

Указатель встроенных функций

LOG2

LOG2 возвращает двоичный логарифм числа — математическое преобразование выполняется прямо в числовом выражении. Вызов допустим в выражении консольной и графической программы; оператор SCREEN или CANVAS не нужен.

Синтаксис

LOG2(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Результат имеет тип DOUBLE; числовой аргумент предварительно преобразуется в DOUBLE.

Правила и ограничения

Аргумент должен быть строго положительным; основание равно 2.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента. Аргумент, равный нулю или меньше нуля, вызывает MB3007. MB3008 возникает, если результат не является конечным DOUBLE.

Пример

PRINT LOG2(8)

Ожидаемый вывод:

3

См. также

Указатель встроенных функций

POW

Функция POW возвращает первое число в степени второго, позволяя вычислить степенную зависимость с целым или дробным показателем. Вызывается она в выражениях консольных и графических программ; оператор SCREEN или CANVAS не требуется.

Синтаксис

POW(<основание>, <показатель степени>)

Аргументы

Передайте два числа. Основание — возводимое число; показатель степени — степень, которая может быть дробной. Оба преобразуются в DOUBLE.

Результат

Функция возвращает значение типа DOUBLE.

Правила и ограничения

Ноль в нулевой степени даёт 1. Отрицательное основание с неподходящим дробным показателем не имеет вещественного результата.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента. MB3007 возникает при неопределённом вещественном результате; MB3008 — при бесконечном результате.

Пример

PRINT POW(2, 3)
PRINT POW(0, 0)

Ожидаемый вывод:

8
1

См. также

Указатель встроенных функций

FLOOR

FLOOR возвращает наибольшее целое значение, не превышающее аргумент, то есть даёт целое по величине значение с указанным правилом округления. Вызывать функцию можно в выражении консольной или графической программы; оператор SCREEN или CANVAS не нужен.

Синтаксис

FLOOR(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Тип результата совпадает с типом аргумента, включая DOUBLE и DECIMAL.

Правила и ограничения

Округление направлено к минус бесконечности. INTEGER и LONG возвращаются без изменения.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента.

Пример

PRINT FLOOR(-2.8)
PRINT FLOOR(2.8)

Ожидаемый вывод:

-3
2

См. также

Указатель встроенных функций

CEIL

Функция CEIL возвращает наименьшее целое значение, не меньшее аргумента: так получают целое по величине значение с указанным правилом округления. Вызов допустим в выражении консольной и графической программы, оператор SCREEN или CANVAS не требуется.

Синтаксис

CEIL(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Тип результата совпадает с типом аргумента, включая DOUBLE и DECIMAL.

Правила и ограничения

Округление направлено к плюс бесконечности. INTEGER и LONG возвращаются без изменения.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента.

Пример

PRINT CEIL(-2.8)
PRINT CEIL(2.8)

Ожидаемый вывод:

-2
3

См. также

Указатель встроенных функций

ROUND

ROUND возвращает число, округлённое до ближайшего целого. Функция даёт целое по величине значение с указанным правилом округления и работает в выражениях консольных и графических программ без оператора SCREEN или CANVAS.

Синтаксис

ROUND(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Тип результата совпадает с типом аргумента, включая DOUBLE и DECIMAL.

Правила и ограничения

Половины округляются от нуля; аргумента количества десятичных знаков нет. INTEGER и LONG возвращаются без изменения.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента.

Пример

PRINT ROUND(-2.5)
PRINT ROUND(2.5)

Ожидаемый вывод:

-3
3

См. также

Указатель встроенных функций

FIX

FIX возвращает целую часть числа после удаления дробной части — целое по величине значение с указанным правилом округления. Вызывать её можно в выражении консольной или графической программы; оператор SCREEN или CANVAS не требуется.

Синтаксис

FIX(<значение>)

Аргументы

Аргумент должен быть числом типа INTEGER, LONG, DOUBLE или DECIMAL. Передайте выражение, над которым нужно выполнить указанное вычисление.

Результат

Тип результата совпадает с типом аргумента, включая DOUBLE и DECIMAL.

Правила и ограничения

Усечение направлено к нулю. INTEGER и LONG возвращаются без изменения.

Диагностика

Компилятор отклоняет неверное количество аргументов и несовместимый тип аргумента.

Пример

PRINT FIX(-2.8)
PRINT FIX(2.8)

Ожидаемый вывод:

-2
2

См. также

Указатель встроенных функций