飞花落尽 发表于 2021-7-18 08:56:17

小白请问这个程序为啥不会把每一行的剩余0元素打印?

# 初始化杨辉三角形
# 创建一个10*10的二维列表,并将所有的元素初始化为0
triangle = []
for i in range(10):
    triangle.append([])
    for j in range(10):
      triangle.append(0)
   
# 计算杨辉三角形
# 根据观察,我们知道杨辉三角形左右两边的元素均为1
for i in range(10):
    triangle = 1
    triangle = 1
   
# 第i行j列的值 = 第(i-1)行(j-1)列的值 + 第(i-1)行(j)列的值
for i in range(2, 10):
    for j in range(1, i):
      triangle = triangle + triangle
   
# 输出杨辉三角形
for i in range(10):
    for j in range(i+1):
      print(triangle, end='')
    print()

逃兵 发表于 2021-7-18 09:47:53

最后的代码中
for i in range(10):
    for j in range(i+1):
      print(triangle, end='')
    print()

for j in range(i+1)限制了后面的输出
第一行打一个元素,第二行打前两个元素,第三行打前三个元素....
所以不会把每一行的剩余0元素打印
页: [1]
查看完整版本: 小白请问这个程序为啥不会把每一行的剩余0元素打印?