• 使用Python实现的杨辉三角


    def triangel():
        print ' '*(20*3)+str(1)             #定义起始两行
        print ' '*(19*3)+str(1)+' '*5+str(1)
        for i in range(3,21):
            if i ==3:
                L = [1,1]       #初始化第二行        
            L1 = []
            for j in range(2,i):
                z = L[i-j-1]+L[i-j] # 通过上一行构建下一层数据
                L1.append(z)        # 将数据添加到一个空列表中
            L = [1]       # 再次对L初始化
            L.extend(L1)    # 将两个列表合并
            L.append(1)     # 在L列表中添加最后一个数据“1”
    
            # 以下内容为杨辉三角的打印
            t = ' '*((21-i)*3)+str(1)   # 每次循环进行初始化每列的第一个数据1
            for h in range(1,len(L)):   # 以下为构建每列的除一个数据外的其他数据,
                if L[h]<10:             # 如果数据小于10,就是其前面5个空格,如果
                    t = t + ' '*5+str(L[h]) #数据小于100,就减少一个空格,依次类推,
                elif L[h] <100:         # 直至剩余一个空格,用于分辨相邻的数据
                    t = t+' '*4+str(L[h])
                elif L[h] < 1000:
                    t = t + ' '*3+str(L[h])
                elif L[h] < 10000:
                    t = t + ' '*2+str(L[h])
                elif L[h] < 100000:
                    t = t + ' '*1+str(L[h])
            print t

    以下是运行效果图:

  • 相关阅读:
    NSIS制作安装程序
    poj_1011木棒
    hdoj_1312Red and Black
    搜索题目推荐及解题报告
    应届生就职前要读的几本书
    poj_1564Sum It Up
    priority_queue用法
    hdoj_2952Counting Sheep
    poj_1154LETTERS
    poj_2362
  • 原文地址:https://www.cnblogs.com/zhy128/p/8085249.html
Copyright © 2020-2023  润新知