我遇到以下代码问题。它在excel中没有给出与C#相同的答案,我确信excel答案是正确的。我已经尝试通过添加小数点将整数值更改为double。请指教。
excel版本
=((1+BZ21)*BX21*CG21*(B21*1))-(0.5*BZ21*BX21*CG21*((C21*0)+(0*D21)))
c#version
voltageVector[rows, 5] = ((1.0 + ki) * Rp * c * (ma * 1.0)) - (0.5 * ki * Rp * c * ((mb * 0.0 )+ (mc * 0.0)));
常数ki,Rp,c和ma都是双精度值。
ki = 0.69999999999999907;
Rp = 0.0469486290322602;
c = 60.0
ma = 2.0;
mb = 1.0;
mc = 1.0;
C#答案是
9.5775203225810763
excel答案为9.56760000000433
答案 0 :(得分:0)
我觉得Excel电子表格中的一些内容很有趣。当我尝试这个时,我在C#和Excel中得到了相同的答案。我相信正确的答案是9.577520323。这是我的Excel电子表格的屏幕截图: