這裏有一個問題,我希望能提高我的編程印章。我有這樣的循環,基於年費計算的未來之和,增加了利息和通貨膨脹貶值(它是從Excel中的PV函數導出):使用Math.pow()重構for()循環?
var pmt = 66,449.75 // annual payment
var ip = 0.03 // interest rate
var fv = 0 // future value, not require here
var k = 1 // interest is applied at beginning/end of period
var n = 25 // number of periods (years in this case)
var ri = 0.025 // rate of inflation
var pv = 0;
for (var i = n - 1; i >= 0; i -= 1) {
pv = (pv + (pmt * k - fv) * Math.pow(1 + ri, i))/(1 + ip);
}
是否有可能使用Math.pow()重現這個循環在做什麼?
您在每次迭代重建PV,要archieve什麼? – juvian 2014-10-29 17:24:26
它在做什麼?我不是編譯器,你的變量命名無助於你的問題 – 2014-10-29 17:24:31
需要更多的細節。如果這是實施特定的數學方法或算法,請添加關於哪一個(可能有完全不同的,更有效的實現以達到相同結果)的信息。另外請確保你的代碼解釋你的變量。如果這是一個複製粘貼,請花費額外的努力來重命名變量,以便我們能夠理解它們的用途,或者在您的帖子中解釋它們。如果沒有這些,'pmt','k','fv','ri'和'ip'可能是我們所知的所有常量,像'pmt * k-fv'這樣的東西在循環內部是沒有意義的。 – 2014-10-29 17:28:28