gpt4 book ai didi

ruby - 在 ruby 中 float 圆形错误?

转载 作者:数据小太阳 更新时间:2023-10-29 08:28:42 26 4
gpt4 key购买 nike

ruby-1.8.7 > 1.55.round(1)
=> 1.6
ruby-1.8.7 > 1.555.round(2)
=> 1.56
ruby-1.8.7 > 1.155.round(2)
=> 1.16
ruby-1.8.7 > 10.156.round(2)
=> 10.16
ruby-1.8.7 > 10.155.round(2)
=> 10.15
ruby-1.8.7 > 10.165.round(2)
=> 10.16

什么给了?我错过了什么吗?

编辑

ruby-1.9.2 > 10.155.round(2)
=> 10.15
ruby-1.9.2 > 10.165.round(2)
=> 10.16

最佳答案

浮点值不精确。您的 10.165 在纸上/屏幕上表示为 10.165,但在内存中它表示为非常接近 10.165 的东西...向上或向下舍入取决于错误恰好落在哪个方向。

如果您需要精确处理小数,您可以将它们表示为 BigDecimal(使用小数位/精度表示法)或 Rational(使用小数分子/分母表示法)。

关于ruby - 在 ruby 中 float 圆形错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8742268/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com