Lua5.3与Lua5.1相同代码的比较

我有一个在Lua中进行阶乘计算的脚本:

N,F = 11
while F < 1e200 do
print(N .. "! 是 " .. F)
N = N + 1
-- 基于旧N的阶乘计算新N的阶乘:
F = F * N
end

这个Lua 5.3的代码有什么问题?超过19!之后,一切都变得奇怪了。 但相同的代码在Lua 5.1中运行得很完美。

点赞
用户107090
用户107090

Lua 5.3 支持整数,可以进行环绕算术。

请尝试使用以下代码:

N, F = 1, 1.0

以获得与 Lua 5.1 相同的行为。

2018-03-22 19:01:36