主题:有趣射心
天尝地酒
[专家分:870] 发布于 2007-11-23 17:11:00
请打印以下蛇行!
13 11 10 4 3
12 9 5 2 7
8 6 1 6 8
7 2 5 9 13
3 4 10 11 12
回复列表 (共2个回复)
沙发
QB小猪 [专家分:1200] 发布于 2007-12-06 17:21:00
是不是需要拆成两半来做?请指教...............
板凳
神的思想 [专家分:80] 发布于 2008-02-04 23:21:00
CLS
DO
INPUT X
LOOP UNTIL X MOD 2 = 1
DIM A(X, X)
K = (X * X + 1) \ 2
FOR S = 1 TO X - 1
IF S MOD 2 = 1 THEN
FOR I = 1 TO S
A(I, S + 1 - I) = K
K = K - 1
NEXT I
ELSE
FOR I = S TO 1 STEP -1
A(I, S + 1 - I) = K
K = K - 1
NEXT I
END IF
NEXT S
K = (X + 1) \ 2
FOR I = 1 TO X
IF I < (X + 1) \ 2 THEN A(X + 1 - I, I) = K: K = K - 1
IF I >= (X + 1) \ 2 THEN A(X + 1 - I, I) = K: K = K + 1
NEXT I
M = X + 2: N = X + 2
FOR S = X - 1 TO 1 STEP -1
IF S MOD 2 = 0 THEN
FOR I = X TO X + 1 - S STEP -1
A(I, M - I) = K
K = K + 1
NEXT I
M = M + 2
ELSE
FOR I = X + 1 - S TO X
A(I, N + 1 - I) = K
K = K + 1
NEXT I
N = N + 2
END IF
NEXT S
FOR I = 1 TO X
FOR J = 1 TO X
PRINT USING "###"; A(I, J);
NEXT J
PRINT
NEXT I
END
偶数好像不可以哦!
我来回复