在Lua中,如何判断一个数是否能被另一个数整除?
在Lua中,如何判断一个数是否能被另一个数整除?即没有余数?我只是在寻找布尔值 true 或 false。
12/6 = 2 (true)
18/6 = 3 (true)
20/6 = 3.(3) (false)
In Lua, how can I tell if a number divides evenly into another number? i.e with no remainder? I'm just looking for a boolean true or false.
12/6 = 2 (true)
18/6 = 3 (true)
20/6 = 3.(3) (false)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将除法的余数与零进行比较,如下所示:
模运算符 (
%
) 返回除法的余数。对于 12 和 6,它是 0,但对于 20 和 6,它是 2。它使用的公式是:
a % b == a - math.floor(a/b)*b
Compare the remainder of the division to zero, like this:
The modulus operator (
%
) returns the remainder of division. For 12 and 6 it is 0, but for 20 and 6 it is 2.The formula it uses is:
a % b == a - math.floor(a/b)*b
使用模运算符的问题是,它不能正确处理负数。如果您要使用负数,请改用
math.fmod
:The problem with using the modulus operator is, it doesn't work correctly on negative numbers. If you're going to be using negative numbers, use
math.fmod
instead: