IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python打印杨辉三角,注释详细 -> 正文阅读

[Python知识库]python打印杨辉三角,注释详细

?

?关键:杨辉三角形第i行j列的值 = 第 (i-1) 行 (j-1) 列的值 + 第 (i-1) 行 (j) 列的值

总体思路:循环计算出每个元素的值,用关键公式一层一层的计算,每一层元素存储在列表当中。要注意的是计算过程中的列表访问越界问题,故用条件判断是否为左右端点元素,改变计算方法。

若当前为该层左端点的话,第i行j列的值=第 (i-1) 行 (j) 列的值

若为该层右端点,则第i行j列的值 =?第 (i-1) 行 (j-1) 列的值

非做右端点,则?第i行j列的值 = 第 (i-1) 行 (j-1) 列的值 + 第 (i-1) 行 (j) 列的值

'''打印杨辉三角'''
'''
关键:杨辉三角形第i行j列的值=
第 (i-1) 行 (j-1) 列的值 + 第 (i-1) 行 (j) 列的值
'''

Ceng = int(input('输入要打印的杨辉三角层数:'))

A = [[1]]  #用列表来存储三角元素,最顶的元素是1

#循环计算出每个元素的值,一层一层的算,i表示层数,j表示该层的第j个元素
for i in range(1,Ceng):
    temp = []  #temp用来存储第i层的元素
    
    for j in range(i+1):  #杨辉三角的第i层会有i+1个元素
        
        #若为非端点元素,可以直接按公式加得出值
        if i-1 >= 0 and j-1 >= 0 and j < len(A[i-1]):
            temp.append(A[i-1][j-1] + A[i-1][j])
            
        #若 j-1 < 0 说明为左端元素,则注意越界问题,只加一个值就行
        elif j-1 < 0:
            temp.append(A[i-1][j])

        #若 j == len(A[i]),则说明为本层的最右端元素,同样只加公式中的一个值就行,以防列表越界
        elif j==len(A[i-1]):
            temp.append(A[i-1][j-1])

    A.append(temp) #注意是添加的元素单位是列表类型的,第一次内层循环后A=[[1], [1,1]


print(A)

'''
若层数为10,则A输出为:
[[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]]
通过A[i]直接获取杨辉三角第i层(最顶层记位0层)的所有元素
'''

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-01-24 10:47:36  更:2022-01-24 10:47:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 1:23:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码