鱼C论坛

 找回密码
 立即注册
查看: 2157|回复: 2

[已解决]纠结

[复制链接]
发表于 2022-8-3 12:25:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
# 初始化杨辉三角形
# 创建一个10*10的二维列表,并将所有的元素初始化为0
triangle = []
for i in range(10):
    triangle.append([])
    for j in range(10):
        triangle[i].append(0)
   
# 计算杨辉三角形
# 根据观察,我们知道杨辉三角形左右两边的元素均为1
for i in range(10):
    triangle[i][0] = 1
    triangle[i][i] = 1                                                                  
   
# 第i行j列的值 = 第(i-1)行(j-1)列的值 + 第(i-1)行(j)列的值
for i in range(2, 10):                                                                  ###第一行只有一个1所以从第二行到第十行需要计算,这个我懂。
    for j in range(1, i):                                                                 ###这句话我不太理解什么是(1,i)。
        triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j]
   
# 输出杨辉三角形
for i in range(10):
    for j in range(i+1):
        print(triangle[i][j], end='  ')
    print()
最佳答案
2022-8-3 13:43:11
本帖最后由 jackz007 于 2022-8-3 14:24 编辑

         当然是指循环变量 j 的变化范围是从 1 到 i 了(不包括 i)。
  1. def yang(n):
  2.     r = [[1 for j in range(i + 1)] for i in range(n)]
  3.     for i in range(2 , n):
  4.         for j in range(1 , i):
  5.             r[i][j] = r[i - 1][j - 1] + r[i - 1][j]
  6.     return r

  7. n = int(input('输入 n : ') . strip())
  8. d = yang(n)
  9. for i in range(n):
  10.     s = ' ' * (n - i - 1) * 2 + '%3d' % d[i][0]
  11.     for j in range(1 , i + 1):
  12.         s += ' %3d' % d[i][j]
  13.     print(s)
复制代码

        运行实况:
  1. D:\[00.Exerciese.2022]\Python>python yang.py
  2. 输入 n : 7
  3.               1
  4.             1   1
  5.           1   2   1
  6.         1   3   3   1
  7.       1   4   6   4   1
  8.     1   5  10  10   5   1
  9.   1   6  15  20  15   6   1

  10. D:\[00.Exerciese.2022]\Python>python yang.py
  11. 输入 n : 12
  12.                         1
  13.                       1   1
  14.                     1   2   1
  15.                   1   3   3   1
  16.                 1   4   6   4   1
  17.               1   5  10  10   5   1
  18.             1   6  15  20  15   6   1
  19.           1   7  21  35  35  21   7   1
  20.         1   8  28  56  70  56  28   8   1
  21.       1   9  36  84 126 126  84  36   9   1
  22.     1  10  45 120 210 252 210 120  45  10   1
  23.   1  11  55 165 330 462 462 330 165  55  11   1

  24. D:\[00.Exerciese.2022]\Python>
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-8-3 13:43:11 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2022-8-3 14:24 编辑

         当然是指循环变量 j 的变化范围是从 1 到 i 了(不包括 i)。
  1. def yang(n):
  2.     r = [[1 for j in range(i + 1)] for i in range(n)]
  3.     for i in range(2 , n):
  4.         for j in range(1 , i):
  5.             r[i][j] = r[i - 1][j - 1] + r[i - 1][j]
  6.     return r

  7. n = int(input('输入 n : ') . strip())
  8. d = yang(n)
  9. for i in range(n):
  10.     s = ' ' * (n - i - 1) * 2 + '%3d' % d[i][0]
  11.     for j in range(1 , i + 1):
  12.         s += ' %3d' % d[i][j]
  13.     print(s)
复制代码

        运行实况:
  1. D:\[00.Exerciese.2022]\Python>python yang.py
  2. 输入 n : 7
  3.               1
  4.             1   1
  5.           1   2   1
  6.         1   3   3   1
  7.       1   4   6   4   1
  8.     1   5  10  10   5   1
  9.   1   6  15  20  15   6   1

  10. D:\[00.Exerciese.2022]\Python>python yang.py
  11. 输入 n : 12
  12.                         1
  13.                       1   1
  14.                     1   2   1
  15.                   1   3   3   1
  16.                 1   4   6   4   1
  17.               1   5  10  10   5   1
  18.             1   6  15  20  15   6   1
  19.           1   7  21  35  35  21   7   1
  20.         1   8  28  56  70  56  28   8   1
  21.       1   9  36  84 126 126  84  36   9   1
  22.     1  10  45 120 210 252 210 120  45  10   1
  23.   1  11  55 165 330 462 462 330 165  55  11   1

  24. D:\[00.Exerciese.2022]\Python>
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-8-4 12:26:57 | 显示全部楼层
jackz007 发表于 2022-8-3 13:43
当然是指循环变量 j 的变化范围是从 1 到 i 了(不包括 i)。

        运行实况:

哥,这个i 我还是不懂(1,i)。我的理解是吧i改成10,就是(1,10)。
这样好像也可以运行。
抱歉老哥,我是菜鸟........
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-27 16:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表