easy.math.qsp v 2.1
Операции с целыми числами
#even#
Функция предназначена для округления целых чисел.
args[0] - число
args[1] - разрядность округления 10 ,100 ,1000 и тд если не указано принимается равным 100
$args[2] - up - в сторону увеличения down - в сторону уменьшения, пусто - по правилам округления: последнее число перед округляемым разрядом меньше пяти - округляем в меньшую сторону, больше четырёх - в большую.
Округление отрицательных чисел поддерживается.
Результат работы функции:
func ("#even#",549,10,"up") = 550
func ("#even#",549,10,"down") = 540
func ("#even#",549,1000) = 1000
func ("#even#",-5545,12) = -5500
func ("#even#",45599) = 45600
func ("#even#",-45599) = -45600
#sum#
Функция предназначена для суммирования значений всех элементов массива. Причём суммироваться будут даже элементы, индексируемые через текстовые значения.
Используйте только для заведомо малых значений - функция корректно работает с числами, укладывающимися в определённые интервалы.
$args[0] - имя массива, не может быть числовым.
Результатом работы функции будет число. Значения массива при этом не изменяются.
$func('#sum#','mass1')
#raz#
получает разрядность целого числа.
args[0] - число
Результатом является круглое число. Отрицательные числа поддерживаются.
Результат работы функции:
func('#raz#',36) = 10
func('#raz#',360) = 100
func('#raz#',366) = 100
func('#raz#',9999) = 1000
func('#raz#',-45023) = 10000
#^#
функция предназначена для возведения целого числа в степень.
args[0] - основание, целое число
args[1] - показатель, целое положительное число
Следует заметить, что для подсчёта функция использует цикл. Если Вы возводите число, пусть даже единицу, в большую степень, вычисления на слабых компьютерах могут заметно подвешивать игру.
Результат работы функции:
func('#^#',6,6) = 46656
func('#^#',4,2) = 16
func('#^#',4,3) = 64
func('#^#',4,4) = 256
func('#^#',250,2) = 62500
#-#
Модуль разницы двух целых чисел.
args[0] - первое число, целое
args[1] - второе число, целое
Эта функция несёт не столько какую-то практическую пользу, сколько сокращает запись. Например, есть две переменные, разницу между которыми нам надо вычислить. Вот запись без использования функции:
if a>b: c=a-b else c=b-a
Или:
c=a-b if c<0: c=-c
Двадцать знаков в первом случае, пятнадцать во втором, не считая пробелов. Теперь функция:
c=func('#-#',a,b)
Семнадцать знаков. Выглядит неубедительно, потому как взяты переменные с короткими именами. А что если вместо этих переменных пришлось использовать такие:
if a_easy_math>b_easy_math: c_easy_math=a_easy_math-b_easy_math else c_easy_math=b_easy_math-a_easy_math
сто четыре символа. А теперь функция:
c_easy_math=func('#-#',a_easy_math,b_easy_math)
сорок семь символов - запись вдвое короче.
| |
Aleks Versus'Easy Libraries'2013 Aleks Versus'Game Adventure Making'Really Unimaginable Stories'2013
|
|