Python实现星号正三角形和倒三角形

正三角:

提供一个数,显示星号构成的三角形。比如9,显示输出三角形如下如示:

 经过观察,每行左侧空格数是所在行号减1,每行星星数是当前行号与上一行号之和。

def output_stars_online(row_num):
    for i in range(1, row_num + 1):
        print(" " * (row_num - i), end="")    # 每行左侧空格数是所在行号减1
        print("*" * (i + i - 1))    # 每行星星数是当前行号与上一行号之和

output_stars_online(9)

倒三角:

def output_stars_down(row_count):
    '''
    倒三角,以6行为例,第一行输出0个空格,第二行1个,第三行2个,第六行5个空格。
    第一行输出11个*,第二行9个,第三行7个,第四行5个,第五行3个,第六行1个。
    :param row_num:
    :return:
    '''
    temp = row_count  # 临时记下行数,在下面会用到从大到小使用行号。
    for j in range(1, row_count + 1):
        print(" " * (j - 1), end="")
        print("*" * (temp + temp - 1))  # 第一行空格输出完毕后,第一行的*数,是最大行数加上最大行数减1的值。
        temp -= 1


output_stars_down(9)

物联沃分享整理
物联沃-IOTWORD物联网 » Python实现星号正三角形和倒三角形

发表评论