鱼C论坛

 找回密码
 立即注册
查看: 2599|回复: 12

24讲动动手杨辉三角

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

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

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

x
triangle = [[None]]
for i in range(9):
        for j in range(i+1):
                if j < 1or j==i:
                    triangle[i][j]==1
                else:
                        triangle[i][j] == triangle[i-1][j-1] + triangle[i-1][j]
                print(triangle)                        
              
这是我输入的代码,运行结果如下
[[None]]
Traceback (most recent call last):
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\杨辉三角形.py", line 5, in <module>
    triangle[i][j]==1
IndexError: list index out of range
超出列表范围,但不知道怎么改,求大佬给看看,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-8 16:48:25 | 显示全部楼层
你在迭代时列表 triangle 里都只有一个元素,应该是设置有 9 项列表的二维列表!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-8 16:49:43 | 显示全部楼层
你在迭代时列表 triangle 里都只有一个元素,应该是设置有 9 项列表的二维列表!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-8 16:50:15 | 显示全部楼层
本帖最后由 python爱好者. 于 2022-3-8 16:51 编辑

你在迭代时列表 triangle 里都只有一个元素,应该是设置有 9 项列表的二维列表!
希望能发出去
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-3-8 16:51:02 | 显示全部楼层
python爱好者. 发表于 2022-3-8 16:50
怎么发不出去???

你在迭代时列表 triangle 里都只有一个元素,应该是设置有 9 项列表的二维列表!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-8 16:52:24 From FishC Mobile | 显示全部楼层
你得先初始化一个9*9 或更多的列表嵌套来模拟数组

评分

参与人数 1鱼币 +5 收起 理由
python爱好者. + 5 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-3-8 16:54:14 | 显示全部楼层
你在迭代时列表 triangle 里都只有一个元素,应该是设置有 9 项列表的二维列表!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-8 16:54:55 | 显示全部楼层
wp231957 发表于 2022-3-8 16:52
你得先初始化一个9*9 或更多的列表嵌套来模拟数组

怎么样初始化呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-8 16:55:07 | 显示全部楼层
舍侠 发表于 2022-3-8 16:54
怎么样初始化呢?

你在迭代时列表 triangle 里都只有一个元素,应该是设置有 9 项列表的二维列表!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-8 19:26:55 | 显示全部楼层
本帖最后由 jackz007 于 2022-3-8 19:31 编辑
#coding:gbk

def yang(n):
    r = []
    for i in range(n):
        r . append([])
        r[i] . append(1)
        if i > 0:
            for j in range(1 , i):
                r[i] . append(r[i - 1][j - 1] + r[i - 1][j])        
            r[i] . append(1)
    return r
for x in yang(int(input('输入 n : '))):
    print(x)
input('按下回车键 . . .')
    运行实况:
D:\[00.Exerciese.2022]\Python>python yang.py
输入 n : 12
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
[1, 5, 10, 10, 5, 1]
[1, 6, 15, 20, 15, 6, 1]
[1, 7, 21, 35, 35, 21, 7, 1]
[1, 8, 28, 56, 70, 56, 28, 8, 1]
[1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
[1, 10, 45, 120, 210, 252, 210, 120, 45, 10, 1]
[1, 11, 55, 165, 330, 462, 462, 330, 165, 55, 11, 1]
按下回车键 . . .
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-3-8 21:12:33 | 显示全部楼层
来学习代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-3-9 08:15:16 | 显示全部楼层

这个好,可是还没学习def,题目要求代码不能超纲,哈哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-9 10:03:58 | 显示全部楼层
舍侠 发表于 2022-3-9 08:15
这个好,可是还没学习def,题目要求代码不能超纲,哈哈
#coding:gbk

n = int(input('输入 n : '))
d = []
for i in range(n):
    d . append([])
    d[i] . append(1)
    if i > 0:
        for j in range(1 , i):
            d[i] . append(d[i - 1][j - 1] + d[i - 1][j])        
        d[i] . append(1)
for x in d:
    print(x)
input('按下回车键 . . .')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-10-6 14:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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