zoukankan      html  css  js  c++  java
  • 使用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

    以下是运行效果图:

  • 相关阅读:
    Java Evaluate Reverse Polish Notation(逆波兰式)
    UVA 11427
    iOS8互动的新通知
    Codeforces 32E Hide-and-Seek 乞讨2关于镜面反射点 计算几何
    error: png.h not found.
    JAVA反射机制
    java24 手写服务器最终版本
    java23 XML
    java22
    java21 封装Response:
  • 原文地址:https://www.cnblogs.com/zhy128/p/8085249.html
Copyright © 2011-2022 走看看