圆形函数(工作表一)在Excel中
使用Excel 2013,将其input两个单元格会产生不同的结果。
=ROUND((10.45-10.00)/1,1) = 0.4
但
=ROUND(0.45/1,1) = 0.5
我不知道为什么这样。 任何人有一个解释?
因为Excel使用浮点math,所以结果不能保证是精确的。 在Excel 2013安装中,如果在单元格中input=10.45-10.00
,则将该单元格更改为精度为30位小数的数字,实际答案为0.449999999999999000000000000000
。 由于0.44999...
和0.45
位于舍入边界的相反两侧,所以舍入小数点后一位。
编辑另请参阅此答案以及问题和其他答案,这些答案更详细地介绍了为什么Excel的math不准确。
看起来最高的计算是创造一个无限小的差异。 要看到这个,从ROUND函数中取出公式。 使用“增加十进制”button,将这两个值都扩展到15+小数位。 你会看到最高值实际上是0.449999999999999。
我不知道为什么它真的这样做。