zoukankan      html  css  js  c++  java
  • python基础练习题(题目 画菱形)

    day15

    ---------------------------------------------------------------

    实例022:画菱形

    题目 打印出如下图案(菱形):。

        *

       ***

      *****

     *******

      *****

       ***

        *

    分析:一个循环控制高度,再分上下两部分输出,循环空格+*,代码如下,感觉有点多

     1 a = input("请输入菱形的高度:")
     2 h = int((int(a)+1)/2)
     3 for i in range(1,int(a)+1):
     4     if i <=h:
     5         for j in range(h-i):
     6             print(" ",end="")
     7         for k in range(2*i-1):
     8             print("*",end="")
     9     if i>h:
    10         for j in range(i-h):
    11             print(" ",end="")
    12         for k in range(2*(2*h-i)-1):
    13             print("*",end="")
    14     print()

    看看答案:

    1 def draw(num):
    2     a="*"*(2*(4-num)+1)
    3     print(a.center(9,' '))
    4     if num!=1:
    5         draw(num-1)
    6         print(a.center(9,' '))
    7 draw(4)

    很汗颜,center方法返回一个指定宽度的字符串,默认已空格填充,理解起来颇有点费劲,看来递归有时确实好用。

  • 相关阅读:
    大整数乘法
    Independent Components Analysis:独立成分分析
    因子分析(Factor analysis)
    EM算法原理详解
    简易解说拉格朗日对偶(Lagrange duality)
    机器学习中有关概率论知识的小结
    高斯混合和EM算法
    java
    java
    java
  • 原文地址:https://www.cnblogs.com/qgc1995/p/14965363.html
Copyright © 2011-2022 走看看