Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我已经对 C# 舍入进行了搜索,但无法找到当前问题的答案。
我想要做的总是向下舍入到最接近的 50。我要向下舍入的所有值都是十进制的。
所以 635.25 将是 600。
298.42 将是 250。
149.56 将是 100。
我看过 math.round 但我将如何使用它,所以它总是向下舍入到最接近的 50 并且从不向上?
将该值除以 50,向下舍入到最接近的整数,然后再次乘以 50:
double n = Math.Floor(n / 50.0) * 50.0;
Guffa 的另一种方式:
(((int) value) / 50) * 50
使用模数:
var roundedDownToClosestFifty = value - (value % 50);