如何正确计算这个数学

时间:2018-01-30 02:33:17

标签: ruby

我得到了这个结果:

8.01 - 8.0 #=> 0.009999999999999787

我希望我的回答是0.01。我该怎么做才能解决这个问题?我怎么能让这件事发生?我想这是浮动数学。这是由于浮点精度?

1 个答案:

答案 0 :(得分:5)

您可以使用Ruby的任意精度十进制数据类型BigDecimal

BigDecimal.new("8.01") - BigDecimal.new("8") # => 0.1e-1