我意识到我是在愚人节发布的,这有点荒谬,但这不是一个笑话。我在Mac的Microsoft R Open 3.3.2,Windows的3.3.1和CentOS 6的vanilla R 3.3.2上都进行了测试,结果相同。
背景故事:在今天进行调试时,我遇到了一种情况,当我认为它不应该有逻辑等于测试失败时。最简单的测试版本如下,其中3.8 + 0.6
似乎不等于4.4
,但其他组合也是如此。
我在干净的环境中运行这些命令:
> (3.8 + 0.6)
[1] 4.4
> (3.8 + 0.6) == 4.4
[1] FALSE
> (3.6 + 0.8) == 4.4
[1] TRUE
> (3.6 + 0.6 + 0.2) == 4.4
[1] TRUE
> (3.7 + 0.6) == 4.3
[1] TRUE
> (3.9 + 0.6) == 4.5
[1] TRUE
> (3.8 + 0.6) == 4.4
[1] FALSE
> (2.2 + 2.2) == 4.4
[1] TRUE
> (2.3 + 2.1) == 4.4
[1] TRUE
FALSE
结果在世界上发生了什么?