
Функциональный блок CALCULATE вычисляет сложную математическую формулу.
Полная формула компилируется напрямую, поэтому выполнение этого функционального блока очень эффективно.
Внимание: Деление на ноль может привести к нежелательным результатам.
База данных определяет вычисление как строку. При этом можно использовать необязательный знак =, чтобы указать выходной сигнал. Переменные в вычислении выводятся в отсортированном порядке. Обратите внимание на возможные операции, приведенные ниже. Они отличаются от математических формул.
Примечание: Если число определяется с экспонентой, оно может быть некорректно распознано. В этом случае используйте скобки.
Некорректные формулы не компилируются и возвращают ошибку в виде строки.
Входы могут быть представлены произвольно. В зависимости от количества переменных, присутствующих в формуле, они автоматически генерируются.
Выходы возвращают рассчитанный результат или промежуточный результат. Имя может быть определено знаком = в формуле. Используйте ; (точка с запятой) в формуле, чтобы создать несколько вычислений. При этом последний расчет будет выведен на первый выход.
Обратите внимание, что первый знак = предназначен для объявления выхода.
| Функция | Описание |
|---|---|
| -a | Инверсия. Противоположное значение a. |
| a . b | Объединяет два значения как строку. |
| a + b | Сложение. Сумма a и b. |
| a - b | Вычитание. Разность между a и b. |
| a * b | Умножение. Произведение a и b. |
| a / b | Деление. Частное от деления a на b. |
| a % b или mod (a,b) | Модуль. Остаток от деления a на b. |
| expt(a,b) | Возведение в степень. b-я степень числа a. |
| exrt(a,b) | Произвольный корень b из значения a. |
| sqrt(a) | Квадратный корень. |
| ln(a,b) | Вычисляет натуральный логарифм a по основанию b. |
| log(a) | Вычисляет десятичный логарифм. |
| abs(a) | Абсолютное значение a. |
| neg(a) | Отрицательное значение a. То же самое, что и -a. |
| deg2rad(a) | Преобразование из градусов в радианы. |
| rad2deg(a) | Преобразование из радиан в градусы. |
| hex2dec(a) | Преобразование из шестнадцатеричного в десятичное. |
| dec2hex(a) | Преобразование из десятичного в шестнадцатеричное. |
| oct2dec(a) | Преобразование из восьмеричного в десятичное. |
| dec2oct(a) | Преобразование из десятичного в восьмеричное. |
| fmod(a,b) | Остаток от деления с плавающей точкой |
| cos(a) | Косинус. |
| acos(a) | Арккосинус. |
| sin(a) | Синус. |
| asin(a) | Арксинус. |
| tan(a) | Тангенс. |
| atan(a) | Арктангенс. |
| hypot(a,b) | Вычисляет гипотенузу прямоугольного треугольника. |
| ceil(a) | Округление вверх. |
| floor(a) | Округление вниз. |
| round(a,b) | Округляет значение с плавающей точкой. |
| min(a,b[,..]) | Возвращает наименьшее значение. |
| max(a,b[,..]) | Возвращает наибольшее значение. |
| a & b | Побитовое И. |
| a | b | Побитовое ИЛИ. |
| a ^ b | Побитовое исключающее ИЛИ (XOR). |
| ~a | Побитовое НЕ. |
| a << b | Сдвиг битов a на b позиций влево. |
| a >> b | Сдвиг битов a на b позиций вправо. |
| !a | Логическое НЕ (булево значение) |
| a && b или a and b | И (булево значение) |
| a || b или a or b | ИЛИ (булево значение) |
| ++a | Увеличивает a на единицу, а затем возвращает a. |
| a++ | Возвращает a, а затем увеличивает a на единицу. |
| --a | Уменьшает a на единицу, а затем возвращает a. |
| a-- | Возвращает a, а затем уменьшает a на единицу. |
| == | Равно (булево значение) |
| === | Точно идентично (булево значение) |
| is_null(a) или a === null | равно NULL. |
| a <> b или a != b | a не равно b. |
| a < b | Меньше чем (булево значение) |
| a <= b | Меньше или равно (булево значение) |
| a > b | Больше чем (булево значение) |
| a >=b | Больше или равно (булево значение) |
| s?a:b или (s == 1)?a:b | Выбирает между a и b. Если s истинно, возвращается a. |
| ; | Разделитель для вычислений в нескольких шагах. |
Можно использовать все константы Antcas Control. Обратите внимание на регистр букв.
