IRB 浮点数实现



只是出于好奇而问这个。

我正在使用 irb 终端并试图从浮点数中减去浮点数。

我发现

irb(main):003:0> 49.4 - 0.1

给我

=> 49.3

但如果我这样做

irb(main):003:0> 49.3 - 0.1

然后我得到

=> 49.199999999999996

如果 irb 这与实现有关吗?我的意思是为什么 49.3 - 0.1 给出了这样的表示。(这是特定于 49.3 - 0.1,我从来没有其他时间得到过)

我使用 irb 0.9.6

你应该阅读每个计算机科学家都应该知道的关于浮点运算的知识。这不是Ruby或IRB特定的。

最新更新