VB.NET中四舍五入

一、使用math.round,真实结果是四舍六入五取偶,并不是真正的四舍五入
3.44   ---3.4  四舍
3.451  ---3.5 五后非零就进一
3.45   ---3.4  五后皆零看奇偶, 五前为偶应舍 去
3.75   ---3.8  五后皆零看奇偶,五前为奇要进一

3.46   ---3.5  六入


解决方案

1、2.0下使用

Dim ret2 As Double = Math.Round(2.5, MidpointRounding.AwayFromZero)

2、重构函数


3、偷懒方法

System.Math.Round(fshuzhi + 0.00000001)



修正后
3.45   ---3.5
3.46   ---3.5
4.44   ---3.4
即为5全部进

发布了246 篇原创文章 · 获赞 14 · 访问量 50万+

猜你喜欢

转载自blog.csdn.net/liuyunfan/article/details/71159206
今日推荐