从具体到抽象设计循环,利用列表模拟探索循环规律,使得输出结果如下图
所示。
1
5 2
8 6 3
10 9 7 4
…… ……
思路:当输出为 4 行 4 列时,假设 n=4,需要输出 1,2,3,4,……,10,共 10
个数。因此,假设 k=1,2,3,4,……,10,将 k 以某种规律赋值给数组 array,使
得按行列输出 array 恰好满足题意即可。
a = []
# 遍历数组赋空值
for _ in range(100):
a.append([])
for __ in range(100):
a[_].append(0)
k = 1
n = int(input("请输入数字:"))
# 对数组赋值
for i in range(1, n + 1):
for j in range(1, (n - i + 2)):
a[i + j - 1][j] = k
k += 1
# 打印输出
for i in range(1, n + 1):
for j in range(1, i + 1):
print(a[i][j], end=' ')
print()