在python

时间:2018-10-25 14:07:21

标签: python sum

我试图得到一系列从1到n,2到n,...和n的和

例如,如果n = 5,则结果应为 15 14 12 9 5

请为以下代码发表评论。我不知道怎么了。

n=int(input())
sum=0
m=0
factorial=1

for i in range(1, n + 1):
    factorial *= i
    sum=factorial-m
    print(sum)

2 个答案:

答案 0 :(得分:1)

一种相当简单的方法:

n = 5
s = sum(range(n+1))
for i in range(n):
    s -= i
    print(s)

15
14
12
9
5

答案 1 :(得分:0)

我认为您对问题的逻辑感到困惑,但是如果您希望将总和从1变为n,则可以执行以下操作:

import numpy as np
series = np.arange(1, n)
for i in range(series.size + 1):
    print(series[:i].sum())

如果n = 5,则输出为:0, 1, 3, 6, 10