我试图得到一系列从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)
答案 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