3.21. Funkcje matematyczne Lua

Notatka: Przy definiowaniu własnych parametrów (zobacz: Sekcja 3.14) możesz, obok podstawowych działań arytmetycznych, użyć bardziej złożonych funkcji matematycznych. Wykorzystuje się do tego bibliotekę math, w której funkcje są zdefiniowane.

Poniżej znajdziesz listę funkcji, których możesz użyć podczas definiowania. Żeby ich użyć, musisz poprzedzić ich nazwę odwołaniem do biblioteki math, czyli korzystając z funkcji "sqrt" (wyliczenie pierwiastka) musisz wpisać:

math.sqrt(100)

Tabela 3-1. Funkcje Lua do tworzenia własnych parametrów

FunkcjaWynik działania funkcjiPrzykład użycia
abs(x) wartość absolutna argumentu x
math.abs(4)
sin(x), cos(x), tan(x) sinus, cosinus, tangens kąta x podanego w radianach
math.sin(0)
asin(x), acos(x), atan(x) arcus sinus, arcus cosinus, arcus tangens wartości x
math.asin(1)
sinh(x), cosh(x), tanh(x) sinus hiperboliczny, cosinus hiperboliczny, tangens hiperboliczny wartości x
math.sinh()
ceil(x), floor(x) funkcje zaokrąglające liczbę x do najbliższej wartości całkowitej, odpowiednio, w górę i w dół
math.ceil(4.5)
deg(x), rad(x) Zamiana z radianów na stopnie (deg) oraz ze stopni na radiany (rad)
math.rad(90)
exp(x) podniesienie e do potęgi x
math.exp(3)
log(x) logarytm naturalny z x
math.log(10)
log10(x) logarytm o podstawie 10 z x
math.log10(100)
pow(x,y) x podniesione do potęgi y (można też użyć x^y)
math.pow(2,3)
sqrt(x) pierwiastek z x
math.sqrt(9)
min(x,y,z) wartość minimalna z podanej listy argumentów
math.min(7,4,12)
max(x,y,z) wartość maksymalna z podanej listy argumentów
math.max(3,4.5,1)
modf(x) dwa argumenty - wartość całkowita x oraz wartość po przecinku
math.modf(5.3)
random([x],[y]) wartość losowa z zakresu: (0;1), gdy uruchomiona bez argumentu, (0;x) - podany jeden argument, (x;y) - podane dwa argumenty
math.random(23,80)
huge nieskończoność (czasem może być przydatna w połączeniu z funkcjami trygonometrycznymi)
math.huge
pi wartość stałej pi
math.pi

Więcej o pisaniu własnych funkcji możesz przeczytać w rozdziale Parametry definiowalne LUA dokumentu System SZARP - dokumentacja techniczna.