题目:

        不允许使用居中的功能

        通过循环,完成菱形的输出

        主要考查,循环知识,和简单的规纳算法能力

需求为:

        用户输入一个数

        生成一个对应行数的对称的菱形

代码展示:

# 打印菱形图案(1)
n=eval(input("请输入行数:"))
if n % 2:  # n为奇数
    t = 2 * (n // 2)    #每一行前置空格与行数n的函数关系(找规律)
    for i in range(1, (n // 2) + 2):    #循环输出上半部分正三角形
        print(" " * t + "*   " * i, end="")
        t -= 2  #下一行的前置空格数减2
        print() #换行,然后接着下面打印下半部分
    t = 2
    for j in range(n // 2, 0, -1):  #循环输出下半部分三角形
        print(" " * t + "*   " * j, end="")
        t += 2  #下一行的前置空格数加2
        print()
else:  # n为偶数,偶数与奇数情况不同
    t = 2 * (n // 2 - 1)
    for i in range(1, n // 2 + 1):
        print(" " * t + "*   " * i, end="")
        t -= 2
        print()
    t = 0
    for j in range(n // 2, 0, -1):
        print(" " * t + "*   " * j, end="")
        t += 2
        print()





  运行结果:

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐