码迷,mamicode.com
首页 > Windows程序 > 详细

C# Math.Round

时间:2016-05-20 11:14:04      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:

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)

这样计算出来的小数才是真正的中国式四舍五入!!

 
 

 

C# Math.Round

标签:

原文地址:http://www.cnblogs.com/chinaboyzzy/p/5511085.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!