C#如何总是四舍五入到最接近的50

本文关键字:最接近 四舍五入 何总 | 更新日期: 2023-09-27 18:00:30

我已经搜索了C#舍入,但还没能找到当前问题的答案。

我想做的总是四舍五入到最接近的50。我想四舍五入的所有值都是十进制的。

因此635.25等于600。

298.42等于250。

149.56等于100。

我看过math.round,但我该如何使用它,使它总是四舍五入到最接近的50,而从不向上?

C#如何总是四舍五入到最接近的50

将值除以50,四舍五入到最接近的整数,然后再次乘以50:

double n = Math.Floor(n / 50.0) * 50.0;

Guffa的另一种方法:

(((int) value) / 50) * 50

使用模数:

var roundedDownToClosestFifty = value - (value % 50);