-1

我正在努力解决我所知道的应该是一个非常简单的循环。我需要添加从 0 到 n 的所有数字。最终结果需要是一个正整数,尽管我知道如果它是负数,我可以得到绝对值来评估它为正数。

ex: n = 5 
    sum = 5 + 4 + 3 + 2 + 1
    sum = 15

到目前为止我所拥有的是这个

def triangular(n):
    sum_ = 0
    for i in range(n):
        sum_-= n
    return sum_  

任何帮助将不胜感激。

4

2 回答 2

9

不就是这样吗?

def triangular(n):
    sum_ = 0
    for i in range(n+1):
        sum_+= i
    return sum_ 

这将添加从 0 到 n 的所有数字。虽然这可以放在一行中:

def triangular(n):
    return sum(range(n+1))
于 2013-07-16T22:49:01.923 回答
7

从 0 到 N 的数字之和为 N(N+1)/2。怎么样:

return n * (n+1) / 2

而不是使用循环?

于 2013-07-16T22:50:43.727 回答