螺旋格式输出数据

问题:(问答题) 编程输出以下格式的数据。 

 

When i=0 

1

When i=1

7   8   9
6   1   2
5   4   3

When i=2

21  22  23  24  25
20    7    8    9  10
19    6    1    2  11
18    5    4    3  12
17  16  15  14  13

 

1、Python:

def format_data(num):
    # 1、获取各个层的数据
    data_list = []
    pre_col_num = 0
    for idx in range(0, num + 1):
        one_col_num = 2 * idx + 1
        one_max_num = one_col_num * one_col_num - pre_col_num * pre_col_num

        one_data_list = []
        for one_idx in range(pre_col_num * pre_col_num, one_max_num + pre_col_num * pre_col_num):
            one_data_list.append(one_idx + 1)

        pre_col_num = one_col_num
        data_list.append(one_data_list)

    # 打印 TODO 注释掉
    for one_data_list in data_list:
        print_str = ''
        for one_data in one_data_list:
            print_str += str(one_data)
            print_str += '\t'
        print(print_str)
    # 2、放在坐标系中,方便按格式打印 TODO

    # 1、得到最挖层的列数
    #col_num = 2 * num + 1
    # 2、得到循环的最大数
    #max_num = col_num * col_num

format_data(5)

打印结果:(待完善)

2、

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值