我想检查,如果一个数字可以被另一个数字整除:
for i = 1, 100 do
if i % 2 == 0 then
print( i .. " is divisible.")
end
end
这应该没有任何问题,但在我的服务器中使用Lua,如果脚本中有%
,则脚本不会运行...我不知道原因是什么,所以有没有“为此替换?所以我可以查看数字可分性?
谢谢。
答案 0 :(得分:49)
答案 1 :(得分:25)
这不理想,但根据Lua 5.2 Reference Manual:
a%b == a - math.floor(a / b)* b
答案 2 :(得分:3)
for i = 1, 100 do
if (math.mod(i,2) == 0) then
print( i .. " is divisible.")
end
end
答案 3 :(得分:3)
function mod(a, b)
return a - (math.floor(a/b)*b)
end
答案 4 :(得分:3)
使用math.fmod
,在lua 5.1中将lua manual math.mod
重新命名为math.fmod
。
答案 5 :(得分:1)
Lua 5.0不支持%
运算符。
然而,Lua支持通常的算术运算符:二进制+(加法), - (减法),*(乘法),/(除法)和^(取幂);和一元 - (否定)。
Lua 5.1支持%
运算符。
Lua支持通常的算术运算符:二进制+(加法), - (减法),*(乘法),/(除法),%(模数)和^(取幂);和一元 - (否定)。
如果可能,我建议您升级。如果无法做到这一点,请使用列为5.0 Mathematical Functions之一的math.mod
(已在Lua 5.1中重命名为math.fmod