使用python打印十行杨辉三角过程详解

yipeiwu_com6年前Python基础

杨辉三角,是二项式系数在三角形中的一种几何排列

  • 每个数等于它上方两数之和。
  • 每行数字左右对称,由1开始逐渐变大。
  • 第n行的数字有n项。
  • 第n行数字和为2n-1。
  • 第n行的m个数可表示为 C(n-1,m-1),即为从n-1个不同元素中取m-1个元素的组合数。
  • 第n行的第m个数和第n-m+1个数相等 ,为组合数性质之一。
  • 每个数字等于上一行的左右两个数字之和。可用此性质写出整个杨辉三角。即第n+1行的第i个数等于第n行的第i-1个数和第i个数之和,这也是组合数的性质之一。即 C(n+1,i)=C(n,i)+C(n,i-1)。
  • (a+b)n的展开式中的各项系数依次对应杨辉三角的第(n+1)行中的每一项。

性质5和性质7是杨辉三角的基本性质,是研究杨辉三角其他规律的基础。

代码

num=input('请输入行数:')
num =int(num)

list1 =[] #list 用来保存杨辉三角
for n in range(num):
  row =[1] #保存行
  list1.append(row)

  if n ==0:
    print(row)
    continue
  for m in range(1,n):
    row.append(list1[n - 1][m - 1] + list1[n - 1][m])
  row.append(1)

  print(row)

结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解多线程Django程序耗尽数据库连接的问题

Django的ORM是非常好用的,哪怕不是做Web项目也值得一用,所以网上也可以找到不少使用 Django 开发非Web项目的资料,因为除了ORM之个,命令行、配置文件等组件也非常好用。...

Python多进程库multiprocessing中进程池Pool类的使用详解

Python多进程库multiprocessing中进程池Pool类的使用详解

问题起因 最近要将一个文本分割成好几个topic,每个topic设计一个regressor,各regressor是相互独立的,最后汇总所有topic的regressor得到总得预测结果。...

Python实现的绘制三维双螺旋线图形功能示例

Python实现的绘制三维双螺旋线图形功能示例

本文实例讲述了Python实现的绘制三维双螺旋线图形功能。分享给大家供大家参考,具体如下: 代码: # -*- coding:utf-8 -*- #! python3 #绘制三维双螺...

Python 闭包的使用方法

Python 闭包的使用方法 嵌套函数中的非局部变量 在进入闭包之前,我们必须先了解一个嵌套函数和非局部变量。 在函数中定义另一个函数称为嵌套函数。嵌套函数可以访问包围范围内的变量。 在...

Python cookbook(数据结构与算法)将多个映射合并为单个映射的方法

本文实例讲述了Python将多个映射合并为单个映射的方法。分享给大家供大家参考,具体如下: 问题:在逻辑上将多个字典或映射合并为一个单独的映射结构,以此执行某些特定的操作,比如查找值或者...