作业帮 > 综合 > 作业

ROUND( )四舍五入的结果为什么错?

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/10 12:08:08
ROUND( )四舍五入的结果为什么错?
(2140.7-2000)*0.05=140.7*0.05=7.035,四舍五入后等于7.04,但用excel计算时,结果却不同(如下),为什么?
ROUND(7.035,2)=7.04
ROUND(140.7*0.05,2)=7.04
ROUND((2140.7-2000)*0.05,2)=7.03
我怀疑是excel在计算浮点类型的精度问题,
因为浮点类型在存放的时候并不是看起来那样的.
举个例子:
3.44 可能机器里存放的值是 :3.39999999999
这样计算的次数越多,可能就会造成的误差就越明显了..
lz这个问题可能就是 最后 Round(7.03499999999) = 7.03了.
改成 =ROUND(ROUND((2140.7-2000),1)*0.05,2) 没问题...