Вход
Приветствую Вас Гость
 

easy.math.qsp v. 3.1.0

Операции с целыми числами

em.even

Функция предназначена для округления целых чисел.

 args[0] - число
 args[1] - разрядность округления: 10 - десятки, 100 - сотни, 1000 - тысячи, и т.д.; если не указано принимается равным 100.
$args[2] - правило округления числа: [up] - в сторону увеличения; [down] - в сторону уменьшения; пустое значение - по правилам округления: последнее число перед округляемым разрядом меньше пяти - округляем в меньшую сторону, больше четырёх - в большую.

Округление отрицательных чисел поддерживается.

Результат работы функции:
@em.even(549,10,"[up]") & !@ 550
@em.even(549,10,"[down]") & !@ 540
@em.even(549,1000) & !@ 1000
@em.even(-5545,12) & !@ -5500
@em.even(45599) & !@ 45600
@em.even(-45599) & !@ -45600

em.summ

Функция предназначена для суммирования значений всех элементов массива. Причём суммироваться будут даже элементы, индексируемые через текстовые значения.

Используйте только для заведомо малых значений - функция корректно работает с числами, укладывающимися в определённые интервалы.

$args[0] — имя массива (текстовое значение).
$args[1] — разделитель, который будет вставляться между значениями, если склеиваются значения элементов текстового массива. По умолчанию пробел. Склейка без разделителя через передачу /se.

Результатом работы функции может быть число или текст, в зависимости от того, сумму числового или текстового массива вы хотите получить. Значения массива при этом не изменяются.

@em.summ('mass1')

em.digs

Получает разрядность целого числа в виде круглого числа.

 args[0] - число

Отрицательные числа поддерживаются.

Результат работы функции:
@em.digs(36) & !@ 10
@em.digs(360) & !@ 100
@em.digs(366) & !@ 100
@em.digs(9999) & !@ 1000
@em.digs(-45023) & !@ 10000

em.exp

функция предназначена для возведения целого числа в степень.

 args[0] - основание, целое число
 args[1] - показатель, целое положительное число

Следует заметить, что для подсчёта функция использует цикл. Если Вы возводите число, пусть даже единицу, в большую степень, вычисления на слабых компьютерах могут заметно подвешивать игру.

Результат работы функции:
@em.exp(6,6) & !@ 46656
@em.exp(4,2) & !@ 16
@em.exp(4,3) & !@ 64
@em.exp(4,4) & !@ 256
@em.exp(250,2) & !@ 62500

em.abs

Модуль разницы двух целых чисел.

 args[0] - первое число, целое
 args[1] - второе число, целое

Эта функция несёт не столько какую-то практическую пользу, сколько сокращает запись. Например, есть две переменные, разницу между которыми нам надо вычислить. Вот запись без использования функции:

c = iif(a>b,a-b,b-a)

Восемнадцать знаков. Теперь функция:

c = @em.abs(a,b)

Четырнадцать знаков. Выглядит неубедительно, потому как взяты переменные с короткими именами. А что если вместо этих переменных пришлось использовать такие: 

c_easy_math = iif(a_easy_math>b_easy_math,a_easy_math-b_easy_math,b_easy_math-a_easy_math)

Восемьдесят восемь символов. А теперь функция:

c_easy_math = @em.abs(a_easy_math,b_easy_math)

сорок четыре символа - запись не только вдвое короче, но и легче чистается.

em.random

Функция выбрасывает случайное число в указанных промежутках.

$args[0] ... $args[8] - промежутки чисел в формате '11-99'.

Пример вызова функции:
@em.random('10-24','34-49')

В данном случае функция будет выбрасывать случайные числа от 10 до 24, и от 34 до 49, включительно.

em.log

Логарифмирование по указанному основанию.

args[0] - число, которое логарифмируем;
args[1] - основание, по которому логарифмируем (по умолчанию 10);
result - максимально близкая к этому числу степень по указанному основанию.

Результат работы функции:
@em.log(10) & !@ 1
@em.log(100,2) & !@ 6
@em.log(1000,5) & !@ 4
@em.log(2345,5) & !@ 4
@em.log(1013,13) & !@ 2
@em.log(567) & !@ 2

Aleks Versus'Easy Libraries'2013-

Aleks Versus'Game Adventure Making'Really Unimaginable Stories'2013-

Наверх