我正在努力解决我所知道的应该是一个非常简单的循环。我需要添加从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_
非常感谢任何帮助。
答案 0 :(得分: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))
答案 1 :(得分:7)
从0到N的数字之和是N(N + 1)/ 2。怎么样:
return n * (n+1) / 2
而不是使用循环?