我正在尝试将此 excel 代码转换为 c#
IF(D5=F5,ROUND(((SQRT(F5) +0.0833) ^2),0)
我得到的 excel 文件的输出是 19423
但是当我对 C# 使用相同的代码时
D5 = 19400.25
F5 = 19400.25
string s = Math.Round(Convert.ToDecimal(Convert.ToInt32((Math.Sqrt(F5) + 0.0833)) ^ 2)).ToString();
我得到的输出为 137。 我不知道我要去哪里错了我尝试了每件事并坚持这件事。任何人都可以帮助我吗? 提前致谢。
最佳答案
^
符号不像 Excel 中的幂函数。你不能只翻译这个一对一的。 C# ^
符号执行 bitwise exclusive-OR .
翻译此函数应使用的实际 C# 代码:
result = Math.Pow(Math.Sqrt(F5) + 0.0833, 2);
关于c# - 在 c# (^) 符号中使用 Excel 公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50810749/