# 1)打印一个星号
print('*')
#2)打印一行6个星号
* * * * * *
for i in range(6): print('*',end=' ')
#3)打印6列星号
* * * * * *
for i in range(6): print('*')
#4)打印6行6列
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
for i in range(6): for j in range(6): print('*',end=' ') print()
#5)打印金字塔
* * * * * * * * * * * * * * * * * * * * *
分析: 第几行 星号个数 1 1 2 2 3 3 ''' for i in range(1,7): for j in range(i): print('*',end=' ') print()
#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()
#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()