到目前为止我所拥有的:
n=10
for i in range(1,n+1):
for j in range(0,i+1):
print(j,end=' ')
print('')
打印出来:
0 1
0 1 2
0 1 2 3
0 1 2 3 4
0 1 2 3 4 5
0 1 2 3 4 5 6
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 8
0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9 10
输出应为:
0 1 1
0 1 2 3
0 1 2 3 6
0 1 2 3 4 10
0 1 2 3 4 5 15
0 1 2 3 4 5 6 21
0 1 2 3 4 5 6 7 28
0 1 2 3 4 5 6 7 8 36
0 1 2 3 4 5 6 7 8 9 45
0 1 2 3 4 5 6 7 8 9 10 55
每一行的末尾都是该行所有数字的总和。例如,在第5行中,该行中所有数字的总和为15。
正如你所看到的,我漏掉了每行末尾所有数字的总和。我应该添加另一个for循环吗?我应该改变内环吗?我不知道该用什么代码来求这些数字的和。
谢谢!
也许最简单的方法是:
n=10
for i in range(1,n+1):
r = range(i+1)
print(*r, sum(r))
如果您愿意,您可以跟踪自己的总和。
n=10
for i in range(1,n+1):
sumx = 0
for j in range(i+1):
sumx += j
print(j,end=' ')
print(sumx)
或者,显微镜下更好:
n=10
sumx = 0
for i in range(1,n+1):
for j in range(i+1):
print(j,end=' ')
sumx += i
print(sumx)