2014-09-03 48 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]包含边界。