Excel INT等价物

Car*_*r22 4 .net c# excel

我正在寻找以下Excel公式的C#等价物:

(INT(((4800/1000)/0.415)*2.393)/0.05)
Run Code Online (Sandbox Code Playgroud)

540在Excel中使用上面的公式获得了值,但现在我尝试使用以下代码在C#中执行相同的操作:

Math.Round((((4800 /1000) / 0.415) * 2.393) / 0.05, 0)
Run Code Online (Sandbox Code Playgroud)

我得到了价值553.

如何使用C#编码获得相同的值?

Kon*_*man 5

这就是你需要的:

(int)(((4800.0 /1000) / 0.415) * 2.393) / 0.05
Run Code Online (Sandbox Code Playgroud)

或者:

(int)((((double)4800 / 1000) / 0.415) * 2.393) / 0.05
Run Code Online (Sandbox Code Playgroud)

问题是4800和1000文字被解释为整数,而在C#中划分两个整数会产生另一个舍入的整数.所以4800/1000 = 4,但你想要4.8.

通过添加.0您隐式将文字转换为double的部分,或者您也可以执行显式转换.将double除以整数已经给出了一个double.