永发信息网

ROUND(D3316*0.1-105,2) 应该等于45.31 才对呀 为什么计算出来是45.3

答案:2  悬赏:0  手机版
解决时间 2021-03-26 20:41
  • 提问者网友:凉末
  • 2021-03-26 03:05
ROUND(D3316*0.1-105,2) 应该等于45.31 才对呀 为什么计算出来是45.3
最佳答案
  • 五星知识达人网友:長槍戰八方
  • 2021-03-26 03:25
是excel的浮点数计算精度问题,
因为像有小数点的运算,excel就都用浮点数来计算了,
你把=(5266.28-263.23-3500)*0.1-105公式输入进去,然后增加显示的小数位数,
然后你会发现结果不是45.305,而是45.30499999999990,
然后你round2的时候就给舍掉了,
如果非要结果等于45.31的话,

我想到的解决方法是先round3,再round2,
=ROUND(ROUND((5266.28-263.23-3500)*0.1-105,3),2),
坐等大牛给更好的方法。
全部回答
  • 1楼网友:枭雄戏美人
  • 2021-03-26 04:33
ROUND((5266.28-263.23-3500)*0.1-105,2)=45.30999999999,保留两位小数应该是45.30,Excel把后面的0省略了,你可以设置单元格格式,显示两位小数,那个0就显示出来了。追问正常用手工去计算的话5266.28-263.23-3500=1503.05
1503.05*0.1=150.305
150.305-105=45.305
保留两位小数应该是45.31才对呀
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯