如何将一个数字四舍五入到2位小数
本文关键字:四舍五入 数字 2位 小数 一个 | 更新日期: 2023-09-27 18:28:57
我正在尝试使用C#对数字进行四舍五入,这样它总是四舍五进到下一个数字。例如:
0.409 -> 0.41
0.401 -> 0.41
0.414 -> 0.42
0.499 -> 0.50
0.433 -> 0.44
有没有一种方法可以使用.NET内置函数来实现这一点?
Math.Ceiling
。
Math.Ceiling
四舍五入到最近的整数,所以我建议你也做一些除法/乘法:
var notRounded = 0.409;
var rounded = Math.Ceiling(notRounded * 100) / 100;
说明:notRounded
*100会给你40.9。Math.Ceiling
会返回41,所以再次将其除以以"恢复"到原始的十进制形式:0.41.
一种方法是Math.Ceiling
,如前所述。
另一种选择是计算余数,并将差值相加以取整:
decimal r = 0.409M;
decimal d = r % .01M > 0 ? (r + .01M - r % .01M) : r;