谁能解释为什么下面的 Ruby 例程给了我 2.0 的结果?我认为四舍五入是错误的根源。
puts(999_999_999_999_999_9.0 - 999_999_999_999_999_8.0);
= 2.0
同样的错误?
puts(999_999_999_999_999_3.0 - 999_999_999_999_999_2.0);
= 0.0
我正在运行 Ruby 1.9.3p448 (2013-06-27) [i386-mingw32]。
谁能解释为什么下面的 Ruby 例程给了我 2.0 的结果?我认为四舍五入是错误的根源。
puts(999_999_999_999_999_9.0 - 999_999_999_999_999_8.0);
= 2.0
同样的错误?
puts(999_999_999_999_999_3.0 - 999_999_999_999_999_2.0);
= 0.0
我正在运行 Ruby 1.9.3p448 (2013-06-27) [i386-mingw32]。