Day6、Python

题目 杨辉三角 1、程序分析     杨辉三角基本性质:     a、第n行的m个数可表示为 C(n-1,m-1),即为从n-1个不同元素中取m-1个元素的组合数。     b、每个数字等于上一行的左右两个数字之和。可用此性质写出整个杨辉三角。即第n+1行的第i个数等于第n行的第i-1个数和第i个数之和,这也是组合数的性质之一。即 C(n+1,i)=C(n,i)+C(n,i-1)。     举例:

    可以利用Python的生成器generator、sum、zip方法,来实现杨辉三角的打印。 2、程序实现

#Topic          :       杨辉三角   
#File Name      :       Triangle.py
#Author         :       Jack Cui
#Created        :       8 April 2016
def triangles():
        a = [1]
        while True:
                yield a
                a = [sum(i) for i in zip([0] + a,a + [0])]

if __name__ == '__main__':
        h = int(input('请输入您要显示的最大行数:'))
        tri = triangles()
        for n in range(h):
                print(next(tri))

3、结果显示

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据钻研

你不知道的 Javascript

作用域 词法作用域:编译阶段确定(欺骗词法作用域 eval with) JavaScript 1 2 3 4 5 6function foo(str){ "u...

2634
来自专栏逸鹏说道

Python3 与 C# 面向对象之~封装

原文:https://www.cnblogs.com/dotnetcrazy/p/9202988.html

1653
来自专栏塔奇克马敲代码

第 16 章 模板与泛型编程

1162
来自专栏Java与Android技术栈

Scala学习笔记(五)

一个方法只要是没有它的实现(没有等号或没有方法体),它就是抽象的,在子类中覆写或者覆写接口中的非抽象方法(方法有具体实现)要使用override关键字。

764
来自专栏天天

面向对象编程(随机点名)

612
来自专栏逸鹏说道

Python3 与 C# 面向对象之~封装

在线编程:https://mybinder.org/v2/gh/lotapp/BaseCode/master 在线预览:http://github.lessch...

983
来自专栏HTML5学堂

2015.12.01 HTML5真题练习

HTML5学堂:每天一道题,强壮程序员!今日主要涉及昨日题目的解答,以及一道涉及数组、字符串、操作符的题目 HTML5真题【2015.11.30】答案解析 昨日...

2876
来自专栏不止是前端

TS从装饰器到注解到元编程

45311
来自专栏前端知识分享

第34天:日期函数、定时器、倒计时

一、日期函数(Date()) 设置本地日期:年月日时分秒 1、声明日期 var date=new Date();//创建一个新的日期函数 2、使用函数 date...

832
来自专栏程序生活

Leetcode-Easy 141. Linked List Cycle

141. Linked List Cycle 描述: 判断一个单链表中是否存在环 ? 思路: 设置两个指针(fast, slow),初始值...

2984

扫码关注云+社区