【发布时间】:2017-02-13 23:14:53
【问题描述】:
我需要用坐标进行一些计算并遇到 这种(至少对我而言)奇怪的行为。 有人可以解释为什么会这样吗?
$ long
=> 49.0126760222489
$ long % long.floor
=> 0.012676022248896857
我原本希望最后一行仅计算句点后的数字,从 long 开始,但在末尾添加了一个额外的 6857。
为什么要添加数字?
信息从何而来?
【问题讨论】:
-
long的值是怎么计算出来的?
-
来自数据库
-
您使用的是哪个版本的 Ruby?
-
这是浮点数学无处不在的人工制品。完全相同的效果可以显示在例如Python 和 Javascript。与较大的数字相比,较小的数字可以以更高的精度表示。
-
请注意,差异在microns 的范围内(假设这些是地面坐标)