輸出這樣的二維陣列:
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=31 3 4
2 5 8
6 7 9
n=41 3 4 10
2 5 9 11
6 8 12 15
7 13 14 16
n=51 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=61 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=71 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=81 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=91 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
輸出螺旋矩陣
螺旋矩陣 是指一個呈螺旋狀的矩陣,它的數字由第一行開始到右邊不斷變大,向下變大,向左變大,向上變大,如此迴圈。如圖1 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 輸出螺旋矩陣 author zhanliqing ...
輸出螺旋矩陣
關於螺旋矩陣的說法不一,這裡指的是形如 21 22.20 7 8 9 10 19 6 1 2 11 18 5 4 3 12 17 16 15 14 13 的矩陣。問題有兩個 1.程式設計實現輸出這個矩陣 2.設1點的座標是 0,0 x方向向右為正,y方向向下為正.例如 7的座標為 1,1 2的座標為...
矩陣螺旋輸出
劍指 offer 29.順時針列印矩陣 輸入一個矩陣,按照從外向裡以順時針的順序依次列印出每一個數字。1.用行增量和列增量決定下一步方向 2.到達邊界時,換方向 同時縮小邊界條件 3.當左右邊界,上下邊界重合時了,完成全部遍歷 param matrix return var spiralorder ...
輸出雙螺旋矩陣
實驗室師兄找工作時在有道遇到的一道筆試題 列印雙螺旋矩陣。雙螺旋矩陣的定義如下,矩陣的最中心是1,往上是2,右拐3,向下4,然後依次5 6,7.構成一條順序增大的螺旋線,此外,如果從中心往下走的話,也是一條對稱的螺旋線。題目是給定一個矩陣維度n,將其列印出來,示例如下。要求在紙上把 寫完整,時間半小...
輸出螺旋矩陣 三
輸出這樣的二維陣列 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 分析 填充如此一個n n陣列 先觀察規律 n 1 1n 2 1 24 3 對於n n陣列,可以先將1 4 n 填充四周,內部用一個 n 2 n 2 的陣列加上4 n 1 填充,所以用遞迴比較直觀,如下 ...