📜  不同层次的菱形图案程序(1)

📅  最后修改于: 2023-12-03 15:21:31.047000             🧑  作者: Mango

不同层次的菱形图案程序

这是一个可以输出不同层次的菱形图案程序,其中层数由用户输入确定。

程序示例
# 定义输出菱形的函数
def diamond(rows):
    # 输出上半部分菱形
    for i in range(rows):
        print(' ' * (rows-i-1)+'*' * (2*i+1))
    # 输出下半部分菱形
    for i in range(rows-2, -1, -1):
        print(' ' * (rows-i-1)+'*' * (2*i+1))

# 接收用户输入,确定层数
rows = int(input('请输入菱形层数(必须大于 0 且为奇数):'))

# 输出菱形
if rows > 0 and rows % 2 == 1:
    diamond(rows)
else:
    print('输入错误!')
程序说明

定义输出菱形的函数

首先我们定义一个diamond函数,该函数的参数为菱形的层数。在函数体内,我们使用for循环两次,分别输出菱形的上半部分和下半部分。这里需要注意的是,菱形的每一层由一个空格和若干个星号组成,空格数量和星号数量之和为该层的总长度。

在输出上半部分菱形时,我们使用了一个变量i,它的取值范围是0rows-1。在第i层菱形中,空格数量为rows-i-1,星号数量为2*i+1

在输出下半部分菱形时,我们也使用了一个变量i,它的取值范围是rows-20。在第i层菱形中,空格数量同样为rows-i-1,星号数量为2*i+1

接收用户输入,确定层数

程序先使用input函数接收用户输入。为了保证程序的正确性,用户必须输入一个大于0的奇数,否则会输出错误提示信息。

如果用户输入的数值正确,程序会调用diamond函数输出相应层数的菱形。

运行示例
请输入菱形层数(必须大于 0 且为奇数):7
      *
     ***
    *****
   *******
  *********
   *******
    *****
     ***
      *
总结

本程序通过定义函数和循环语句,实现了输出不同层数菱形的功能。同时,为了增加程序的健壮性,还使用了条件判断和错误提示信息。