数学.圆对双打无效

本文关键字:无效 数学 | 更新日期: 2023-09-27 18:07:28

我的双精度不会像预期的那样四舍五入。简单的例子:

 int b = 23;
 double DurchflussAktBit = 99.5;
 double bDurchfluss = 0;
 bDurchfluss = DurchflussAktBit * Convert.ToDouble(b) / (double)60;
 Math.Round(bDurchfluss, 2);

我得到bDurchfluss的值38.141666666666666,即使在四舍五入之后,我期望的值38.14。也尝试了Math.Round((decimal)bDurchfluss, 2);,但给了我相同的值。

我的代码中的错误在哪里?

数学.圆对双打无效

Math.Round返回四舍五入的数字-它不更新您传递给它的数字。

您需要获取返回值并将其赋值给变量:

 bDurchfluss = DurchflussAktBit * Convert.ToDouble(b) / (double)60;
 bDurchfluss = Math.Round(bDurchfluss, 2);