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

yipeiwu_com7年前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设计】。

相关文章

Python警察与小偷的实现之一客户端与服务端通信实例

本文实例讲述了Python警察与小偷的实现之一客户端与服务端通信,分享给大家供大家参考。具体方法分析如下: 该实例来源于ISCC 2012 破解关第四题 目的是通过逆向police,实...

pyspark操作MongoDB的方法步骤

pyspark操作MongoDB的方法步骤

如何导入数据 数据可能有各种格式,虽然常见的是HDFS,但是因为在Python爬虫中数据库用的比较多的是MongoDB,所以这里会重点说说如何用spark导入MongoDB中的数据。...

python tkinter实现屏保程序

本文实例为大家分享了python tkinter实现屏保程序的具体代码,供大家参考,具体内容如下 该脚本摘录自:2014年辛星tkinter教程第二版 #!/usr/bin/env...

Python实现最大子序和的方法示例

Python实现最大子序和的方法示例

描述 给定一个序列(至少含有 1 个数),从该序列中寻找一个连续的子序列,使得子序列的和最大。 例如,给定序列 [-2,1,-3,4,-1,2,1,-5,4], 连续子序列 [4,...

Python中的__new__与__init__魔术方法理解笔记

很喜欢Python这门语言。在看过语法后学习了Django 这个 Web 开发框架。算是对 Python 有些熟悉了。不过对里面很多东西还是不知道,因为用的少。今天学习了两个魔术方法:_...