C# 未正确计算体积

C# 未正确计算体积,c#,C#,上面的代码应该返回523.6,但返回392.7。我想不出来,但我可能遗漏了一些愚蠢的东西。 将其更改为双精度文本不会改变问题。4和3都是整数,因此将它们除以将产生整数1。这可能不是您期望的值 在用3计算商之前,必须将4转换为一个双精度。转换为双精度 volume = (4/3 * PI) * (Math.Pow(5, 3)); return volume; 您也可以将4更改为4.0,因为是的,问题是它是一个整数,所以发生了所谓的事件 这会遇到同样的问题,因为它使用整数除法计算4/3。将其中至少

上面的代码应该返回523.6,但返回392.7。我想不出来,但我可能遗漏了一些愚蠢的东西。
将其更改为双精度文本不会改变问题。

4和3都是整数,因此将它们除以将产生整数1。这可能不是您期望的值

在用3计算商之前,必须将4转换为一个双精度。

转换为双精度

volume = (4/3 * PI) * (Math.Pow(5, 3));
return volume;

您也可以将4更改为4.0,因为是的,问题是它是一个整数,所以发生了所谓的事件


这会遇到同样的问题,因为它使用整数除法计算
4/3
。将其中至少一个转换为双文本,例如
4.0
double volume = (4.0 / 3.0 * Math.PI) * (Math.Pow(5, 3));
volume = (4.0/3.0 * PI) * (Math.Pow(5, 3));
return volume;