Biblioteca Math
Funções Aritméticas Básicas
Section titled “Funções Aritméticas Básicas”math.abs(x)
: Retorna o valor absoluto dex
.math.ceil(x)
: arredondax
na direção do positivo.math.floor(x)
: arredondax
em direção ao negativo.math.modf
: arredondax
arredonda em direção a zero e também retorna a parte fracionária.math.fmod(x, y)
: retorna o resto da divisão dex
pory
(com o sinal do dividendo).math.max(x, y, ...)
: Retorna o maior valor entre os argumentos.math.min(x, y, ...)
: Retorna o menor valor entre os argumentos.math.pow(x, y)
: Retornax
elevado à potência dey
.math.sqrt(x)
: Retorna a raiz quadrada dex
.
local absolute_value = math.abs(-5) -- Retorna 5print("Valor absoluto: " .. absolute_value)
local ceiling_value = math.ceil(3.14) -- Retorna 4print("Valor teto: " .. ceiling_value)
local floor_value = math.floor(3.14) -- Retorna 3print("Valor piso: " .. floor_value)
local max_value = math.max(10, 20, 5, 15) -- Retorna 20print("Valor máximo: " .. max_value)
local min_value = math.min(10, 20, 5, 15) -- Retorna 5print("Valor mínimo: " .. min_value)
local power_value = math.pow(2, 3) -- Retorna 8print("Valor da potência: " .. power_value)
local square_root = math.sqrt(25) -- Retorna 5print("Raiz quadrada: " .. square_root)
Funções Aleatórias
Section titled “Funções Aleatórias”math.random([m, n])
: Retorna um número pseudoaleatório.math.randomseed(x)
: Define a semente para o gerador de números aleatórios.
math.randomseed(os.time()) -- Inicializa o gerador de números aleatórioslocal random_value = math.random(1, 100) -- Retorna um inteiro aleatório entre 1 e 100print("Valor aleatório: " .. random_value)
Constantes Matemáticas
Section titled “Constantes Matemáticas”math.pi
: Retorna o valor de π (pi).math.huge
: Uma constante representando um valor numérico maior que qualquer outro valor numérico representável em Lua.math.mininteger
Um número representando valor mínimo de uminteger
math.maxinteger
Um número representando valor máximo de uminteger
local pi_value = math.piprint("Pi value: " .. pi_value)-- Pi value: 3.1415926535898
local hugenumber = math.hugeprint("Huge number value: " .. hugenumber) -- Huge number value: inf
local mininteger = math.minintegerprint("Min integer value: " .. mininteger) -- Min integer value: -9223372036854775808
local maxinteger = math.maxintegerprint("Max integer value: " .. maxinteger) -- Max integer value: 9223372036854775807
Funções Trigonométricas
Section titled “Funções Trigonométricas”math.sin(x)
: Retorna o seno dex
(em radianos).math.cos(x)
: Retorna o cosseno dex
(em radianos).math.tan(x)
: Retorna a tangente dex
(em radianos).math.asin(x)
: Retorna o arco seno dex
(em radianos).math.acos(x)
: Retorna o arco cosseno dex
(em radianos).math.atan(x)
: Retorna o arco tangente dex
(em radianos).math.atan2(y, x)
: Retorna o arco tangente dey/x
(em radianos), usando os sinais de ambos os argumentos para encontrar o quadrante correto.
local angulo = math.pi / 4print("Seno de 45 graus:", math.sin(angulo))print("Cosseno de 45 graus:", math.cos(angulo))print("Tangente de 45 graus:", math.tan(angulo))
local valor = 0.707print("Arco seno de 0.707:", math.asin(valor))print("Arco cosseno de 0.707:", math.acos(valor))print("Arco tangente de 1:", math.atan(1))print("Arco tangente de 1/1:", math.atan2(1,1))
Funções úteis
Section titled “Funções úteis”math.tointeger(x)
: Se o valorx
for conversível em um número inteiro, retorna esse inteiro. Caso contrário, retornanil
.math.type(x)
: Retorna o tipo do númerox
(como"integer"
ou"float"
).