---
url: https://docs.juniper.bot/cmd/calculator.md
description: Описание калькулятора в JuniperBot.
---

# Калькулятор

Калькулятор в JuniperBot представлен в виде команды "вычислить/math". Данная статья описывает все его возможности.

## Математические операторы { #mathematical-operators }

| Оператор | Описание                                               |
|:---------|:-------------------------------------------------------|
| +        | Сложение / Унарный плюс                                |
| -        | Вычитание / Унарный минус                              |
| \*       | Умножение, может быть опущен перед открывающей скобкой |
| /        | Деление                                                |
| %        | Получение остатка от деления (mod)                     |
| ^        | Возведение в степень                                   |

## Бинарные операторы { #boolean-operators }

| Оператор | Описание         |
|:---------|:-----------------|
| =        | Равно            |
| ==       | Равно            |
| !=       | Не равно         |
| <> | Не равно         |
| <     | Меньше           |
| <=    | Меньше или равно |
| >     | Больше           |
| >=    | Больше или равно |
| &&       | Логическое "И"   |
| ||     | Логическое "ИЛИ" |

::: info Информация
Бинарные операции всегда в результате дают число: 1 или 0 как истина или ложь соответственно. При вычислении бинарных операций правдой считается любое отличное от 0 число.
:::

## Поддерживаемые функции { #supported-functions }

| Функция                                        | Описание                                                                                                                      |
|:-----------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------|
| `NOT(выражение)`                               | Логическое отрицание                                                                                                          |
| `IF(условие, выражение_истины, выражение_лжи)` | Условный оператор, возвращает результат вычисления истинного или ложного выражения в результате вычисления указанного условия |
| `RANDOM()`                                     | Возвращает случайное дробное число от 0 до 1                                                                                  |
| `MIN(e1, e2, ...)`                             | Возвращает наименьший результат из перечисленных выражений                                                                    |
| `MAX(e1, e2, ...)`                             | Возвращает наибольший результат из перечисленных выражений                                                                    |
| `ABS(выражение)`                               | Возвращает модуль результата указанного выражения                                                                             |
| `ROUND(выражение, точность)`                   | Округляет результат выражения до указанной точности (числа знаков)                                                            |
| `FLOOR(выражение)`                             | Возвращает наибольшее целое число, которое меньше или равно выражению                                                         |
| `CEILING(выражение)`                           | Возвращает наименьшее целое число, которое больше или равно выражению                                                         |
| `LOG(выражение)`                               | Возвращает натуральный логарифм (по основанию e) выражения                                                                    |
| `LOG10(выражение)`                             | Возвращает десятичный логарифм выражения                                                                                      |
| `SQRT(выражение)`                              | Возвращает квадратный корень выражения                                                                                        |
| `SIN(выражение)`                               | Возвращает синус угла (в градусах)                                                                                            |
| `COS(выражение)`                               | Возвращает косинус угла (в градусах)                                                                                          |
| `TAN(выражение)`                               | Возвращает тангенс угла (в градусах)                                                                                          |
| `COT(выражение)`                               | Возвращает котангенс угла (в градусах)                                                                                        |
| `SEC(выражение)`                               | Возвращает секанс (в градусах)                                                                                                |
| `CSC(выражение)`                               | Возвращает косеканс (в градусах)                                                                                              |
| `ASIN(выражение)`                              | Возвращает угол обратного синуса (в градусах)                                                                                 |
| `ACOS(выражение)`                              | Возвращает угол обратного косинуса (в градусах)                                                                               |
| `ATAN(выражение)`                              | Возвращает угол обратного тангенса (в градусах)                                                                               |
| `ACOT(выражение)`                              | Возвращает угол обратного котангенса (в градусах)                                                                             |
| `ATAN2(y,x)`                                   | Возвращает арктангенс для заданных координат x и y (в градусах)                                                               |
| `SINH(выражение)`                              | Возвращает гиперболический синус выражения                                                                                    |
| `COSH(выражение)`                              | Возвращает гиперболический косинус выражения                                                                                  |
| `TANH(выражение)`                              | Возвращает гиперболический тангенс выражения                                                                                  |
| `COTH(выражение)`                              | Возвращает гиперболический котангенс выражения                                                                                |
| `SECH(выражение)`                              | Возвращает гиперболический секанс (в градусах)                                                                                |
| `CSCH(выражение)`                              | Возвращает гиперболический косеканс (в градусах)                                                                              |
| `ASINH(выражение)`                             | Возвращает угол гиперболического синуса (в градусах)                                                                          |
| `ACOSH(выражение)`                             | Возвращает угол гиперболического косинуса (в градусах)                                                                        |
| `ATANH(выражение)`                             | Возвращает угол гиперболического тангенса (в градусах)                                                                        |
| `RAD(выражение)`                               | Преобразовывает угол в градусах в приблизительный эквивалент угла в радианах                                                  |
| `DEG(выражение)`                               | Преобразовывает угол в радианах в приблизительный эквивалент угла в градусах                                                  |
| `FACT(выражение)`                              | Возвращает факториал выражения. Вернет 1 для 0 или отрицательного значения                                                    |

## Встроенные константы { #supported-constants }

| Константа | Описание                                                                                     |
|:----------|:---------------------------------------------------------------------------------------------|
| `e`       | Значение числа **е** (основание натурального логарифма, число Эйлера) точностью до 70 знаков |
| `PI`      | Значение числа π точностью до 100 знаков                                                     |
| `TRUE`    | Число 1 (истина)                                                                             |
| `FALSE`   | Число 0 (ложь)                                                                               |
| `NULL`    | Значение null                                                                                |
