Python实现杨辉三角(2种实现方案)

杨辉三角形,又称贾宪三角形、帕斯卡三角形,是二项式系数在三角形中的一种几何排列。

下图显示了杨辉三角的前 7 行:

递归打印杨辉三角

杨辉三角形中的数,正是(x+y)的 N 次方幂展开式各项的系数,下面以递归的方法来打印杨辉三角形。

从杨辉三角形的特点出发,可以总结出:

  • 第 x 行有 x 个值(设起始行为第1行)。
  • 对于第 x 行的第 y(y>=3)个值,有:当 y=1 或 y=x 时,其值为 1;当 y!=1 且 y!=x 时,其值为第 x-1 行的第 y-1 个值与第 x-1 行的第 y 个值之和。


将这些特点提炼成数学公式,则位于杨辉三角第 x 行第 y 列的值为:
 


根据上面的分析,完整的程序如下:

def triangles(x, y):
    if y == 1 or y == x: # y=1或y=x时,函数返回值为1
        return 1
    else:
        z
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值