ruby - 在 ruby 中,为什么 "100.7".to_f.modulo(1) = 0.700000000000003?

标签 ruby floating-point modulo

这对我来说很奇怪:

irb(main):012:0> "100.7".to_f.modulo(1)
=> 0.700000000000003

为什么最后是 3?

irb(main):019:0> "10.7".to_f.modulo(1)
=> 0.699999999999999

同样的事情...我们只得到这个值的余数除以 1。应该是准确的。

最佳答案

关于ruby - 在 ruby 中,为什么 "100.7".to_f.modulo(1) = 0.700000000000003?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1296525/

相关文章:

r - 如何在 R 中计算圆形域(工作日)中的相对差

ruby-on-rails - 如何禁用目录的 rails 延迟加载?

c - float 变量后跟括号是什么意思?

float 计算 : When to Round?

algorithm - 实现模运算的更好方法(算法问题)

php - 循环捕获新的百数

ruby-on-rails - 将数组分隔为带引号的逗号分隔字符串

ruby - 如何检索当前方法名称以便将其输出到记录器文件?

ruby-on-rails - 使用使用 API 的 Ruby Gem - 设置客户端

python - 将 float 转换为字符串而不丢失信息 - Python