Математические функции#

1. Функция «abs»#

Функция «abs» вычисляет абсолютное значение аргумента.

Синтаксис#

abs("const")
abs(IN.root.value)
abs($variable)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: -189,
«b»: 16.85
}

OUT.task = abs(IN.a)

{«task»:189.0}

{
»a»: -300
}

define variable = In.a
OUT.task = abs($variable)

{«task»:300.0}

-

define variable = 23i - 56*5
OUT.task = abs($variable)

{«task»:257.0}

2. Функция «round»#

Функция «round» вычисляет значение, округленное до ближайшего целого числа.

Синтаксис#

round("const")
round(IN.root.value)
round($variable)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: -189,
«b»: 16.85
}

OUT.task = round(IN.b)

{«task»:17.0}

{
»a»: -189,
«b»: 16.85
}

define variable = In.b
OUT.task = round(5*sqrt(54 - $variable + 4))

{«task»:32.0}

3. Функция «floor»#

Функция «floor» вычисляет наибольшее целое число, которое меньше или равно аргументу.

Синтаксис#

floor("const")
floor(IN.root.value)
floor($variable)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: -189,
«b»: 16.85
}

OUT.task = floor(IN.b)

{«task»:16.0}

{
»a»: -189,
«b»: -16.85
}

OUT.task = floor(IN.b)

{«task»:-17.0}

{
»a»: 23.75
}

OUT.task = floor(52 + In.a)

{«task»:75.0}

4. Функция «exp»#

Функция «exp» возвращает основание натурального логарифма, возведенное в степень аргумента функции.

Синтаксис#

exp("const")
exp(IN.root.value)
exp($variable)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: 9
}

OUT.task = exp(In.a)

{«task»:8103.083927575384}

{
»a»: -189
}

define variable = In.a
OUT.task = exp($variable)

{«task»:8.285961676100547E-83}

-

OUT.task = exp(71 + 453)

{«task»:3.7179925679201674E227}

5. Функция «sqrt»#

Функция «sqrt» вычисляет квадратный корень аргумента функции.

Синтаксис#

sqrt("const")
sqrt(IN.root.value)
sqrt($variable)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: 64
}

OUT.task = sqrt(IN.a)

{«task»:8.0}

{
»a»: 48,
«b»: -5
}

OUT.task = sqrt(IN.b)

{«task»:»NaN»}

{
»a»: 64
}

define variable = In.a
OUT.task = sqrt(sqrt($variable))

{«task»:2.8284271247461903}

6. Функция «negate»#

Функция «negate» вычисляет значение, противоположное аргументу по знаку.

Синтаксис#

negate("const")
negate(IN.root.value)
negate($variable)
negate($variable + IN.root.test)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: -189
}

OUT.task = negate(IN.a)

{«task»:189.0}

{
»a»: -189,
«b»: 5
}

OUT.task = negate(IN.b)

{«task»:-5.0}

{
»a»: -189,
«b»: 5
}

define variable = In.a
OUT.task = negate($variable + IN.b)

{«task»:184.0}

7. Функция «negateExact»#

Функция «negateExact» вычисляет значение, противоположное аргументу по знаку и преобразует число в тип Long.

В случае если вычисленное значение будет меньше чем Long.MIN_VALUE, то будет выброшено исключение java.lang.ArithmeticException.

Синтаксис#

negateExact("const")
negateExact(IN.root.value)
negateExact($variable)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

-

OUT.task = negateExact(-76.36)

{«task»:76.0}

{
»a»: 189
}

OUT.task = negateExact(sqrt(In.a))

{«task»:-13.0}

8. Функция «pow»#

Функция «pow(arg_1, arg_2)» — вычисляет значение, равное arg_1 возведенному в степень arg_2.

Синтаксис#

pow("const1", "const2")
pow(IN.root.value_1, IN.root.value_2)
pow($variable_1, $variable_2)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: 4,
«b»: -2
}

OUT.task = pow(IN.a, IN.b)

{«task»:0.0625}

-

OUT.task = pow(2, 5)

{«task»:32.0}

9. Функция «max»#

Функция «max(arg_1, arg_2)» — возвращает максимальное число из arg_1 и arg_2.

Синтаксис#

max("const1", "const2")
max(IN.root.value_1, IN.root.value_2)
max($variable_1, $variable_2)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: 48,
«b»: -5
}

OUT.task = max(IN.a, IN.b)

{«task»:48.0}

{
»a»: 4,
»b»: -2
}

define variable = In.a
OUT.task = max($variable, In.b)

{«task»:4.0}

10. Функция «min»#

Функция «min(arg_1, arg_2)» — возвращает минимальное число из arg_1 и arg_2.

Синтаксис#

min("const1", "const2")
min(IN.root.value_1, IN.root.value_2)
min($variable_1, $variable_2)

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

{
»a»: 48,
«b»: -5
}

OUT.task = min(IN.a, IN.b)

{«task»:-5.0}

{
»a»: 16,
«b»: -2
}

define variable = In.a
OUT.task = min($variable, -100)

{«task»:-100.0}

11. Функции преобразования числовых типов (toInt, toLong, toDouble, toDecimal)#

Преобразование числовых типов — это процесс конвертации значения из одного типа в другой.

Функции преобразования числовых типов «toInt», «toLong», «toDouble», «toDecimal» могут также работать с константными строковыми и булевыми (true, false) значениями.

Синтаксис#

toInt(10056746L)
toLong(12342d)
toDecimal(10345i)
toDouble(134L)
toLong(IN.root.value)
toLong($variable)
toLong(abs(-4.5))
toInt(false)
toDouble("456")

Примеры использования функции#

Входящее сообщение

Правило трансформации

Выходящее сообщение

-

OUT.result_1 = toInt(10056746L)

{«result_1»:10056746}

-

OUT.result_2 = toInt(12342d)

{«result_2»:12342}

-

OUT.result_3 = toLong(10345i)

{«result_3»:10345}

-

OUT.result_4 = toDecimal(10056746L)

{«result_4»:10056746}

-

OUT.result_5 = toDouble(1035i)

{«result_5»:1035}

-

OUT.result_6 = toInt(true)

{«result_6»:1}

-

OUT.result_7 = toInt(false)

{«result_7»:0}

-

OUT.result_8 = toLong(false)

{«result_8»:0}

-

OUT.result_9 = toLong(«123.456»)

{«result_9»:123}

-

OUT.result_10 = toDouble(«123»)

{«result_10»:123.0}

-

OUT.result_11 = toDecimal(10345i)

{«result_11»:10345.0}

{
»a»: 16.911
}

OUT.result_12 = toLong(In.a)

{«result_12»:16}

{
»a»: 48,
«b»: -5
}

OUT.result_13 = toDouble(IN.b)

{«result_13:-5}