Excel电子表格没有给出与C#程序相同的答案

时间:2015-04-29 00:05:26

标签: c# excel double-precision integer-division

我遇到以下代码问题。它在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

1 个答案:

答案 0 :(得分:0)

我觉得Excel电子表格中的一些内容很有趣。当我尝试这个时,我在C#和Excel中得到了相同的答案。我相信正确的答案是9.577520323。这是我的Excel电子表格的屏幕截图:

enter image description here