zoukankan      html  css  js  c++  java
  • 输出螺旋矩阵(二)

    输出这样的二维阵列:

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

    Sub spiralmetrix(ByVal n As Integer)
    n = n - 1
    Dim i As Integer, j As Integer, a() As Integer
    ReDim a(n, n)
    a(0, 0) = 1
    a(n, n) = (n + 1) ^ 2
    For i = 1 To n
    a(0, i) = a(0, i - 1) + IIf(i Mod 2 = 1, 2 * i, 1)
    a(n, n - i) = (n + 1) ^ 2 + 1 - a(0, i)
    a(i, 0) = a(i - 1, 0) + IIf(i Mod 2 = 1, 1, 2 * i)
    a(n - i, n) = (n + 1) ^ 2 + 1 - a(i, 0)
    Next


    For i = 1 To n - 1
    For j = 1 To n - 1
    a(i, j) = a(i - 1, j + 1) + (-1) ^ (i - j)
    Next
    Next

    Debug.Print "n=" & n + 1
    For i = 0 To n
    For j = 0 To n
    Debug.Print Left(a(i, j) & Space(5), 5);
    Next
    Debug.Print
    Next

    End Sub

    Private Sub Command1_Click()
    Dim i As Integer
    For i = 2 To 10
    spiralmetrix i
    Next
    End Sub


    输出:

    n=2
    1    3   
    2    4   
    n=3
    1    3    4   
    2    5    8   
    6    7    9   
    n=4
    1    3    4    10  
    2    5    9    11  
    6    8    12   15  
    7    13   14   16  
    n=5
    1    3    4    10   11  
    2    5    9    12   19  
    6    8    13   18   20  
    7    14   17   21   24  
    15   16   22   23   25  
    n=6
    1    3    4    10   11   21  
    2    5    9    12   20   22  
    6    8    13   19   23   30  
    7    14   18   24   29   31  
    15   17   25   28   32   35  
    16   26   27   33   34   36  
    n=7
    1    3    4    10   11   21   22  
    2    5    9    12   20   23   34  
    6    8    13   19   24   33   35  
    7    14   18   25   32   36   43  
    15   17   26   31   37   42   44  
    16   27   30   38   41   45   48  
    28   29   39   40   46   47   49  
    n=8
    1    3    4    10   11   21   22   36  
    2    5    9    12   20   23   35   37  
    6    8    13   19   24   34   38   49  
    7    14   18   25   33   39   48   50  
    15   17   26   32   40   47   51   58  
    16   27   31   41   46   52   57   59  
    28   30   42   45   53   56   60   63  
    29   43   44   54   55   61   62   64  
    n=9
    1    3    4    10   11   21   22   36   37  
    2    5    9    12   20   23   35   38   53  
    6    8    13   19   24   34   39   52   54  
    7    14   18   25   33   40   51   55   66  
    15   17   26   32   41   50   56   65   67  
    16   27   31   42   49   57   64   68   75  
    28   30   43   48   58   63   69   74   76  
    29   44   47   59   62   70   73   77   80  
    45   46   60   61   71   72   78   79   81  
    n=10
    1    3    4    10   11   21   22   36   37   55  
    2    5    9    12   20   23   35   38   54   56  
    6    8    13   19   24   34   39   53   57   72  
    7    14   18   25   33   40   52   58   71   73  
    15   17   26   32   41   51   59   70   74   85  
    16   27   31   42   50   60   69   75   84   86  
    28   30   43   49   61   68   76   83   87   94  
    29   44   48   62   67   77   82   88   93   95  
    45   47   63   66   78   81   89   92   96   99  
    46   64   65   79   80   90   91   97   98   100 

  • 相关阅读:
    Bootstrap入门
    CSS3动画详解(图文教程)
    CSS3属性详解(图文教程)
    CSS3选择器详解
    HTML5详解
    jQuery动画详解
    jQuery的介绍和选择器详解
    html 出现粒子线条,鼠标移动会以鼠标为中心吸附的特效之canvas-nest.js插件
    div 内容宽度自适应、超出后换行
    layui layui.open弹窗后按enter键不停弹窗问题的解决
  • 原文地址:https://www.cnblogs.com/fengju/p/6336342.html
Copyright © 2011-2022 走看看