002 用Python打印九九乘法表与金字塔(*)星号

'''
1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 
'''
第一个解法
for i in range(1,10):
    for j in range(1,i+1):
        print('%d*%d=%d' % (i,j,i*j),end=' ')
    print('')
 第二种解法
for i in range(1, 10):
    for j in range(1, i+1):
        print('{}x{}={} '.format(i, j, i*j), end='')
    print()
第三种解法
for i in range(1, 10):
    for j in range(1, i+1):
        print('{}x{}={}\t'.format(i, j, i*j), end='')
    print()
第四种解法
for i in range(1,10):
    for j in range(1,i+1):
        d = i * j
        print('%d*%d = %2d'%(i,j,d),end = ' ')
    print()
第六种解法
i=1
while i<10:
    j=1
    while j<=i:
        print("%d*%d=%2d"%(j,i,j*i),end=' ')
        j+=1
    print("")
    i+=1
  1. 打印如下所示金字塔,基础不错的同学该题可以考虑for循环的嵌套:
'''
             # max_level=5
    *        # current_level=1,空格数=4,*号数=1
   ***       # current_level=2,空格数=3,*号数=3
  *****      # current_level=3,空格数=2,*号数=5
 *******     # current_level=4,空格数=1,*号数=7
*********    # current_level=5,空格数=0,*号数=9

# 数学表达式
空格数 = max_level-current_level
*号数 = 2*current_level-1
'''
nf = 5
for i in range(1,nf + 1):
    print(' ' * (nf - i) + '*' * (2 * i - 1))

posted @ 2019-08-01 17:05  ABDM  阅读(3492)  评论(0编辑  收藏  举报