# 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