在其他堆栈的帮助下,我转换了这个Excel公式
=+G15*B15/(1-(1+G15)^(-H15))转换成这个javascript公式(给定G15=1.325%、B15=importe和H=plazo):
(importe * 0.01325) / (1 - (Math.pow((1 + importe), -plazo) ) );现在,当我在excel和javascript中计算importe=10000和plazo=144时,在excel中我得到155.93,在javascript中我得到132.5
我已经检查过这个和很多其他公式了,可能会有一些愚蠢的错误,但我看不出来……比如读了你写的一个拼写错误的单词,却没有发现打字错误。
提前感谢
发布于 2012-06-01 04:32:16
这是您想要的计算结果:
=+G15*B15/(1-(1+G15)^(-H15))
而不是使用您的已转换代码的示例:
等同于:(importe * 0.01325) / (1 - (Math.pow((1 + importe), -plazo) ) ):
=B15*G15/(1-(1+B15)^(-H15))
所以你的公式应该是:
(0.01325 * importe) / (1 - (Math.pow((1 + 0.01325), -plazo)));
发布于 2012-06-01 02:21:55
尝试用括号将excel公式中的G15*B15括起来,看看答案是否匹配。
发布于 2012-06-01 02:28:03
10001 ^ -144 = 9.857038937816808015251426789861755167080725836 × 10^-577
结果不能正确表示,将被“截断”为0。132.5等于(importe * 0.01325)
The Complete Javascript Number Reference
https://stackoverflow.com/questions/10839043
复制相似问题