编程实现打印等腰三角形的两种方式

介绍两种使用while循环打印等腰三角形的例子,如下图所示

第一种方式:分成两个矩形处理,如下图

python代码如下:

'''
练习,打印等腰三角形如下:
    *
   ***
  *****
观察发现,该等腰三角形由空格和*号组成,可以分为左右两部分(列数为3 和 列数为2 两部分,行数都为3行)
'''
row = 1
while row <= 3: # 外层循环控制行数
    # print(row)
    a = 1
    # 打印左半部分 列数为3的部分,而左半部分又分为上下两部分
    while a <= 3: # 打印 1~3列
        if a <= 3 - row:
            print (' ', end='')  # end=''表示不换行
        else:
            print ('1', end='')
        a += 1
    b = 1
    while b < 3:  #打印 4~5列,循环两次
        if b < row:
            print('1', end='')
            pass
        else:
            print(' ', end='')
        b += 1
    row += 1
    print ('
')

第二种方式,左边打印空格,右边利用规律打印1,规律如下,每行的1的个数为行数的2倍-1

python代码如下:

# 打印等腰三角形的第二种方式
row = 1   # row代表行数
while row <= 3:  # 外层循环 1~3 循环三次
    m = 1
    while m <= 3-row :      # 打印左边空格
        print(' ', end='')
        m += 1
        pass
    n = 1
    while n <= 2*row-1:    # 打印1
        print('1', end='')
        n += 1
        pass
    row += 1   # 控制行数的变量自增
    print('
')

总结:第二种方式打印方式,利用了每行1的个数跟行数之间的关系,相对简单一些。

原文地址:https://www.cnblogs.com/lkldeblog/p/13197020.html