Python 打印矩形、直角三角形、等腰三角形、菱形


# 1)打印一個星號 

  
print('*')
View Code

#2)打印一行6個星號

* * * * * * 
for i in range(6):
    print('*',end=' ')
View Code

#3)打印6列星號

*
*
*
*
*
*
for i in range(6):
    print('*')
View Code

#4)打印6行6列

* * * * * * 
* * * * * * 
* * * * * * 
* * * * * * 
* * * * * * 
* * * * * * 
for i in range(6):
    for j in range(6):
        print('*',end=' ')
    print()
View Code

 #5)打印金字塔

* 
* * 
* * * 
* * * * 
* * * * * 
* * * * * * 
分析:     第幾行         星號個數
              1               1
              2               2
              3               3
'''
for i in range(1,7):
    for j in range(i):
        print('*',end=' ')
    print()
View Code

#6)打印等腰三角形

          * 
        * * * 
      * * * * * 
    * * * * * * * 
  * * * * * * * * * 
* * * * * * * * * * * 
'''
分析:     第幾行         星號個數        空格數
              0               1             5
              1               3             4
              2               5             3
              3               7             2
              n               2n+1          n-1-i
'''
for i in range(6):
    for k in range(6-1-i):
        print(' ',end=' ')
    for j in range(2*i+1):
        print('*',end=' ')
    print()
View Code

 

#7)打印菱形

           * 
        * * * 
      * * * * * 
    * * * * * * * 
  * * * * * * * * * 
* * * * * * * * * * * 
  * * * * * * * * * 
    * * * * * * * 
      * * * * * 
        * * * 
          *          
'''
  * * * * * * * * *
    * * * * * * *
      * * * * *
        * * *
          *
分析:菱形的上半部分已經打印出,下面考慮如何打印下半部分,最上面的11個星號,
已經在上半部分給出,只考慮打印11個星號以下的圖形。
             第幾行         星號個數        空格數
              0               9            1
              1               7             2
              2               5             3
              3               3             4
              n                             n+1
利用數學歸納分析星號個數:i+(9-3*i)
            行數                  星號個數
            0     i+9=9    9-3*i=9   i+(9-3*i) =9
            1     i+6=7    9-3*i=6   i+(9-3*i) =7
            2     i+3=5    9-3*i=3   i+(9-3*i) =5
            3     i+0=3    9-3*i=0   i+(9-3*i) =3

'''



for i in range(6):
    for k in range(5 - i):
        print(" ", end=" ")
    for j in range(2 * i + 1):
        print("*", end=" ")
    print()
for i in range(5):
    for k in range(i + 1):
        print(" ", end=" ")
    for m in range((9 - 3 * i) + i):
        print("*", end=" ")
    print()
View Code

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM