Funciones de la biblioteca math
Utilice math.floor, ceil, sqrt, sin, cos, random, huge y pi.
Funciones de la biblioteca math es una lección gratuita de Lua Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Lua Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Lua Academy incluye 4 lecciones en total.
El módulo math
El módulo math proporciona constantes y funciones matemáticas: math.pi, math.huge, math.maxinteger y decenas de funciones más.
Funciones de redondeo
math.floor redondea hacia abajo, math.ceil redondea hacia arriba y math.tointeger convierte un número de coma flotante en un entero o devuelve nil.
print(math.floor(3.7)) -- 3
print(math.ceil(3.2)) -- 4
print(math.tointeger(4.0)) -- 4Trigonometría
Las funciones reciben radianes. Use math.pi para convertir grados a radianes.
local deg = 45
local rad = deg * math.pi / 180
print(math.sin(rad)) -- ~0.707
print(math.cos(rad)) -- ~0.707
print(math.tan(rad)) -- ~1.0math.sqrt y math.abs
math.sqrt(x) devuelve la raíz cuadrada; math.abs(x) devuelve el valor absoluto.
print(math.sqrt(144)) -- 12.0
print(math.abs(-42)) -- 42math.exp y math.log
Funciones exponenciales y logarítmicas. math.log acepta un argumento opcional que indica la base.
print(math.exp(1)) -- 2.718...
print(math.log(math.exp(1))) -- 1.0
print(math.log(100, 10)) -- 2.0math.min y math.max
Devuelven el mínimo o el máximo de una lista de números. Aceptan varios argumentos.
print(math.min(3, 1, 4, 1, 5)) -- 1
print(math.max(3, 1, 4, 1, 5)) -- 5
print(math.min(table.unpack({7,2,9}))) -- 2math.random y math.randomseed
Generan números pseudoaleatorios. Use os.time() como semilla para obtener secuencias que no se repitan.
math.randomseed(os.time())
print(math.random()) -- float in [0,1)
print(math.random(6)) -- integer in [1,6]
print(math.random(10, 20)) -- integer in [10,20]math.modf
math.modf(x) devuelve las partes entera y fraccionaria de x como dos valores independientes.
local int, frac = math.modf(3.75)
print(int, frac) -- 3.0 0.75math.huge e infinito
math.huge representa el infinito positivo. Es útil como valor inicial en bucles que buscan el mínimo.
local min = math.huge
for _, v in ipairs({5, 2, 8, 1}) do
if v < min then min = v end
end
print(min) -- 1Aritmética de enteros (Lua 5.3+)
Lua 5.3 introdujo los enteros reales. Use math.type(x) para distinguir un entero de un número de coma flotante.
print(math.type(1)) -- integer
print(math.type(1.0)) -- float
print(math.maxinteger) -- 9223372036854775807math.fmod
math.fmod(x, y) devuelve el resto de x/y con el mismo signo que x, a diferencia del operador %.
print(math.fmod(-7, 3)) -- -1
print(-7 % 3) -- 2 (always non-negative in Lua)Pregunta sobre la biblioteca math
¿Qué función devuelve las partes entera y fraccionaria de un número?
Resumen: biblioteca math
La biblioteca math incluye redondeo, trigonometría, exponenciales, números aleatorios, valores mínimo y máximo y aritmética de enteros. Use siempre os.time() como semilla de math.random para obtener aleatoriedad realista.
Preguntas frecuentes
¿La lección «Funciones de la biblioteca math» es gratis?
Sí — el texto completo de «Funciones de la biblioteca math» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Lua Academy, actualiza a CoddyKit PRO. El curso de Lua Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Funciones de la biblioteca math»?
Utilice math.floor, ceil, sqrt, sin, cos, random, huge y pi. Practicas Lua Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Lua Academy?
No se requiere experiencia previa. Lua Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Funciones de la biblioteca math»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Lua Academy?
Sí. Cada lección de Lua Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Funciones de la biblioteca math
- Funciones de la biblioteca table
- Bibliotecas os e io
- La biblioteca debug