增量返回錯誤值我有一個奇怪的錯誤,當我在遞增,每次0.1雙值使用Math.floor功能。LUA(科羅娜SDK)math.floor()以0.1
它發生僅具有0.1的增量,並開始在值5
例:math.floor(4)返回但math.floor(5)返回 !!!
你可以自己嘗試一下,用這種簡單的代碼:
for i=3,7,0.1 do
print("val : "..i.." floor : "..math.floor(i))
end
這裏是上面代碼的結果:
Corona Simulator[1494:707] val : 3 floor : 3
Corona Simulator[1494:707] val : 3.1 floor : 3
Corona Simulator[1494:707] val : 3.2 floor : 3
Corona Simulator[1494:707] val : 3.3 floor : 3
Corona Simulator[1494:707] val : 3.4 floor : 3
Corona Simulator[1494:707] val : 3.5 floor : 3
Corona Simulator[1494:707] val : 3.6 floor : 3
Corona Simulator[1494:707] val : 3.7 floor : 3
Corona Simulator[1494:707] val : 3.8 floor : 3
Corona Simulator[1494:707] val : 3.9 floor : 3
Corona Simulator[1494:707] val : 4 floor : 4
Corona Simulator[1494:707] val : 4.1 floor : 4
Corona Simulator[1494:707] val : 4.2 floor : 4
Corona Simulator[1494:707] val : 4.3 floor : 4
Corona Simulator[1494:707] val : 4.4 floor : 4
Corona Simulator[1494:707] val : 4.5 floor : 4
Corona Simulator[1494:707] val : 4.6 floor : 4
Corona Simulator[1494:707] val : 4.7 floor : 4
Corona Simulator[1494:707] val : 4.8 floor : 4
Corona Simulator[1494:707] val : 4.9 floor : 4
Corona Simulator[1494:707] val : 5 floor : 4
Corona Simulator[1494:707] val : 5.1 floor : 5
Corona Simulator[1494:707] val : 5.2 floor : 5
Corona Simulator[1494:707] val : 5.3 floor : 5
Corona Simulator[1494:707] val : 5.4 floor : 5
Corona Simulator[1494:707] val : 5.5 floor : 5
Corona Simulator[1494:707] val : 5.6 floor : 5
Corona Simulator[1494:707] val : 5.7 floor : 5
Corona Simulator[1494:707] val : 5.8 floor : 5
Corona Simulator[1494:707] val : 5.9 floor : 5
Corona Simulator[1494:707] val : 6 floor : 5
Corona Simulator[1494:707] val : 6.1 floor : 6
Corona Simulator[1494:707] val : 6.2 floor : 6
Corona Simulator[1494:707] val : 6.3 floor : 6
Corona Simulator[1494:707] val : 6.4 floor : 6
Corona Simulator[1494:707] val : 6.5 floor : 6
Corona Simulator[1494:707] val : 6.6 floor : 6
Corona Simulator[1494:707] val : 6.7 floor : 6
Corona Simulator[1494:707] val : 6.8 floor : 6
Corona Simulator[1494:707] val : 6.9 floor : 6
Corona Simulator[1494:707] val : 7 floor : 6
如果它可以幫助,如果我們採用了modulo 1對於一輛車的價值的結果,我們得到這個結果:0.99999999999999
的可能重複[?爲什麼Lua的算術不等於本身(http://stackoverflow.com/questions/6366954/why-is-lua-arithmetic-is-not-equal-to-its-own) – finnw 2013-03-20 17:11:52