C# Math.Round
C#中Math.Round()方法默认重载实现的不是常有的四舍五入方法,而是四舍六入五求偶方法(也叫四舍六入五成双)。
一、四舍六入五成双
四舍六入五成双是一种比较精确比较科学的计数保留法,是一种数字修约规则。
这一方式的另一个常见名称为“银行家舍入”,是IEEE754标准_百度百科的推荐舍入标准。
具体规则如下:
1. 被修约的数字小于5时,该数字舍去; 2. 被修约的数字大于5时,则进位; 3. 被修约的数字等于5时,要看5前面的数字,若是 奇数则进位,若是偶数则将5舍掉,即修约后末尾数字都成为偶数;若5的后面还有不为“0”的任何数,则此时无论5的前面是奇数还是偶数,均应进位。二、四舍五入
如果要使用Math.Round()实现四舍五入,要用重载方法decimal Round(decimal d, int decimals, MidpointRounding mode)
这样计算出来的小数才是真正的中国式四舍五入!!
转载于:https://www.cnblogs.com/chinaboyzzy/p/5511085.html
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
