计算机小数的运算中 0.1+0.7 < 0.8 这个是知道的 但是为什么 0.1 + 0.2 = 0.3? 0.2 转化成二进制同样是无限循环小数啊??按理不应该也是 0.1 + 0.2 < 0.3 么
1
gps32251070 OP 好吧,知道原因了。
|
2
ryd994 2017-03-11 07:48:36 +08:00 via Android
于是呢?为什么?
|
3
chingli 2017-03-11 08:36:17 +08:00 via Android
为什么会有 0.1 + 0.2 < 0.3 ?而不是 0.1 + 0.2 > 0.3 ?
看不懂你说的问题。只知道不能直接比较两个浮点数是否相等,而具体应该怎么做还是很复杂的。 https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/ https://en.wikipedia.org/wiki/Unit_in_the_last_place |
4
ynyounuo 2017-03-11 09:08:58 +08:00
这个主题好尴尬啊 ………
|
5
0915240 2017-03-11 09:59:52 +08:00
|
6
gps32251070 OP @chingli 因为第一反应是小数被舍去了一部分就会一直小,后来重新仔细算了下,尴尬
|
8
mengzhuo 2017-03-11 23:47:42 +08:00
以前我也很疑惑,直到我看过这个视频,这个教授很赞
?list=PLbtzT1TYeoMgzLyE9n-pJrTFZX18EUKw_ |