螺旋格式輸出數據

問題:(問答題) 編程輸出如下格式的數據。 編程

 

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

 

一、Python:app

def format_data(num):
    # 一、獲取各個層的數據
    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)
    # 二、放在座標系中,方便按格式打印 TODO

    # 一、獲得最挖層的列數
    #col_num = 2 * num + 1
    # 二、獲得循環的最大數
    #max_num = col_num * col_num

format_data(5)

打印結果:(待完善)spa

二、code

相關文章
相關標籤/搜索