实在敲不动了 2021-09-19 22:12 采纳率: 50%
浏览 203
已结题

给定n,Python绘制数字菱形图案

比如:

n=6

img

  • 写回答

1条回答 默认 最新

  • 微笑的菜鸟 2021-09-20 10:41
    关注

    思路是这样,下半个留给你自己补充,如果有不明白的可以私信或者追问

    
    n = input("size: ")
    # 初始打印数值为0
    x = 0
    ll = []
    # 上半个,每行打印数字个数逐步递增
    for i in range(1, int(n)+1):
        s = []
        for j in range(i):
            # 如果数值大于9,重新从0开始打印
            if x > 9:
                x = 0
            s.append(str(x))
            x += 1
        # 得到每行的结果,放入列表
        ll.append(s)
    
    # 下半个,每行打印数字个数逐步递减,你自己尝试写一下
    # TODO
        
    # 格式化输出
    for i in ll:
        s = " ".join(i)
        print(s.center(int(n)*2-1))
    
    

    最终运行结果

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月28日
  • 已采纳回答 9月20日
  • 创建了问题 9月19日