浅析计算表达式Round四舍五入不正确问题

问题:计算定义公式的值并填写到指定列round( 430* 0.4095, 2),算出来的结果是176.08,而不是想象中的176.09
原因:Math.Round采用的是国际通行的是 Banker 舍入法(银行家舍入),即四舍六入五取偶。银行家舍入是IEEE规定的小数舍入标准之一,也是IEEE目前规定中最优秀的舍入方法,因此所有符合 IEEE 标准的语言都应该实现这种算法。这个算法可以概括为:四舍六入五考虑,五后非零就进一,五后皆零看奇偶,五前为偶应舍去,五前为奇要进一。
举例分析下:
round(176.084,2)//返回176.08(四舍)
round(176.086,2)//返回176.09
浅析计算表达式Round四舍五入不正确问题
问题:计算定义公式的值并填写到指定列round( 430* 0.4095, 2),算出来的结果是176.08,而不是想象中的176.09原因:Math.Round采用的是...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



