2014-09-03 52 views
-3

需要編寫一個簡單函數,該函數採用任意數字> 0並在該數字和1之間添加所有整數並將它們相加。編寫一個迭代的簡單加法函數

這裏是我使用的代碼:

function SimpleAdding(num) { 
    for (i=num; i=1; i--) { 
    num = num+i; 
    } 
    return num; 

} 
+0

您能否爲您的預期輸出提供樣本運行? – Yaje 2014-09-03 06:48:04

+0

向我們展示一個示例輸出。 – 2014-09-03 06:48:58

+1

你的問題是什麼? – 2014-09-03 06:56:15

回答

0
function SimpleAdding(num) { 
var temp = 0; 

if(num > 0) 
    for (i=1; i<=num; i++) { 
    temp= temp+i; 
    } 
    return temp; 
} 
0

你所想現在要做的是增加的數字在原來的一個,還包括相同數量(增加了兩遍我猜)。您應該從i = (num - 1)發出請求,或者創建一個新的sum變量,並將您的值放在那裏。

此外,您在for中間部分的狀況有問題,正如您所說的「多次執行此操作,只要我等於1」,但實際上從未發生過,例如您。通過5,5!= 1。將條件更正爲=>將會說「只要數字大於或等於1,就這樣做」。

function SimpleAdding(num) { 
    var sum = 0; 
    for (i = num; i >= 1; i--) { 
    sum += i; 
    } 
    return sum; 

} 
+0

感謝您在語言中突破這一點,像我一樣的全新人都能理解。這一切都非常有意義 – 2014-09-03 07:59:53

+0

追逐,很高興它幫助。如果您發現這個答案總體上有幫助並解決了您的問題,請不要忘記標記是已接受的答案。如果您對原始問題有任何疑問,請不要退縮。 – Gabor 2014-09-03 08:05:09

0

只是一個公式,你可能有興趣

function SimpleAdding(num) { 
    var temp = 0; 

    if(num > 0){ 
     temp = ((1+num)/2)*num; 
    } 

    return temp; 
} 

這個公式將計算的範圍內數字的總和:1..[value_of_num]包含邊界。