C# - 向下舍入到最接近的整数

本文关键字:最接近 整数 舍入 | 更新日期: 2023-09-27 18:34:35

我有一个正在计算一些数字的 C# 应用程序。我需要四舍五入。

var increment = 1.25;
var result = 50.45 - 23.70;    // equals 26.75
int interval = difference / increment; // result is 21.4. However, I just want 21

我必须把interval带到一个int.同时,我不能只使用 Convert.ToInt32,因为它的舍入行为。我总是想要最小的整数。但是,我不确定如何。

C# - 向下舍入到最接近的整数

试试这个。

 int interval = Convert.ToInt32(Math.Floor(different/increment));

您也可以简单地将结果投射到 int .这将截断该数字。

int interval = (int)(difference / increment);

使用静态Math类:

int interval = (int)Math.Floor(difference/increment);

Math.Floor()将向下舍入到最接近的整数。

Math.Floor()函数应该可以解决问题:

int interval = (int)Math.Floor(difference / increment);

另请参阅:https://msdn.microsoft.com/de-de/library/e0b5f0xb%28v=vs.110%29.aspx