我正在寻找以下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#编码获得相同的值?
这就是你需要的:
(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.
| 归档时间: |
|
| 查看次数: |
401 次 |
| 最近记录: |