函数round的用法

如题所述

具体用法如下:

(银行家舍入)

Round 函数即四舍五入取偶。

Round 函数在MSDN里的中文释义为四舍五入,这是翻译时的疏忽。

在 VB,VBScript,C#,J#,T-SQL 中 Round 函数都是采用 Banker's rounding(银行家舍入)算法,即四舍六入五取偶。事实上这也是 IEEE 规定的舍入标准。因此所有符合 IEEE 标准的语言都应该是采用这一算法的。

为了避免四舍五入规则造成的结果偏高,误差偏大的现象出现,一般采用四舍六入五留双规则(Banker's Rounding)。

准确而言,四舍六入五留双应称作“四舍六入,逢五无后则留双”,如此就可以完全覆盖此规则的详情。

四舍六入五留双规则的具体方法是:

(一)当尾数小于或等于4时,直接将尾数舍去。

例如,将下列数字全部修约为四位有效数字,结果为:

(二)当尾数大于或等于6时,将尾数舍去并向前一位进位。

例如,将下列数字全部修约为四位有效数字,结果为:

(三)当尾数为5,而尾数后面的数字均为0时,应看尾数“5”的前一位:若前一位数字此时为奇数,就应向前进一位;若前一位数字此时为偶数,则应将尾数舍去。数字“0”在此时应被视为偶数。

例如,将下列数字全部修约为四位有效数字,结果为:

(四)当尾数为5,而尾数“5”的后面还有任何不是0的数字时,无论前一位在此时为奇数还是偶数,也无论“5”后面不为0的数字在哪一位上,都应向前进一位。

例如,将下列数字全部修约为四位有效数字,结果为:

虽然“四舍五入”是中国最早提出的算法,值得我们自豪,但不能因此就认为它始终是先进的。毕竟它已经有近二千年历史了(大约一千七百多年前,天文学家杨伟就已明确提出了“四舍五入法”)。

四舍五入算法逢五就要进位,带来的问题就是结果偏大,尤其是在大量的数据统计中。Banker 舍入则在统计概率上解决了这个问题。

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网