博客园  :: 首页  :: 管理

背景:今天在对使用 Powerautomate 对 0.985 小数进行四舍五入时,保留两位小数时,结果却是 0.98, 使用python去计算也是这样

查询了大量的资料,才知道 有一个叫 银行家舍入法,又称【四舍六入五取偶法】的规则算法

银行家舍入法,又称“四舍六入五取偶法”,是由IEEE 754标准推荐的浮点数取整算法,主要用于减少累计误差并维持数据统计特性 。

银行家舍入法是由IEEE 754标准规定的浮点数取整算法,大部分的编程软件都使用的是这种方法。 所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。

“四舍六入五成双”,也即“4舍6入5凑偶”,这里“四”是指≤4时舍去,"六"是指≥6时进上。

"五"指的是根据5后面的数字来定,当5后有数时,舍5入1;当5后无有效数字时,需要分两种情况来讲:5前为奇数,舍5入1;5前为偶数,舍5不进(0是偶数)。 

该规则因在金融领域被长期采用而得名,其设计初衷是平衡传统四舍五入导致的系统性偏差,确保大数据量的舍入结果均值更接近原始值。

作为IEEE标准推荐算法,现已成为主流编程语言和数据处理工具的默认舍入方式 。

举例说明一下:如下所示

image

因此对于我们正常处理数据而言,主要是当修约位为5时,可能会出现预期之外的结果!

 

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/19098929