math lua division corona

math - En Lua, ¿cómo puedo saber si un número se divide equitativamente en otro número?



division corona (2)

Compara el resto de la división a cero, así:

12 % 6 == 0 18 % 6 == 0 20 % 6 ~= 0

El operador de módulo ( % ) devuelve el resto de la división. Para 12 y 6 es 0, pero para 20 y 6 es 2.

La fórmula que usa es: a % b == a - math.floor(a/b)*b

En Lua, ¿cómo puedo saber si un número se divide equitativamente en otro número? es decir, sin resto? Solo estoy buscando un booleano verdadero o falso.

12/6 = 2 (true) 18/6 = 3 (true) 20/6 = 3.(3) (false)


El problema con el uso del operador de módulo es que no funciona correctamente en números negativos. Si va a usar números negativos, utilice math.fmod en math.fmod lugar:

maxtothemax@maxtothemax-mint ~ $ lua > return -13%6 5 > return 13%6 1 > return math.fmod (-13, 6) -1 > return math.fmod (13, 6) 1 >