主题:50
FFKK
[专家分:1610] 发布于 2010-08-13 13:34:00
编写
1 2 6 7 15
3 5 8 14 16
4 9 13 17 22
10 12 18 21 23
11 19 20 24 25
回复列表 (共6个回复)
沙发
SUB1 [专家分:0] 发布于 2010-10-08 19:02:00
CLS
INPUT n
DIM a(n, n)
i = n
j = 1
di = -1
dj = -1
FOR k = 1 TO n * n
a(i, j) = k
i = i + di
j = j + dj
IF j > n AND i > n THEN
i = i - 2
j = n
di = -1 * di
dj = dj * -1
ELSEIF i < 1 AND j < 1 THEN
j = j + 2
i = 1
di = -1 * di
dj = -1 * dj
ELSEIF j < 1 THEN
j = 1
di = di * -1
dj = dj * -1
ELSEIF j > n THEN
j = n
i = i - 2
di = di * -1
dj = dj * -1
ELSEIF i < 1 THEN
j = j + 2
i = 1
di = di * -1
dj = dj * -1
ELSEIF i > n THEN
i = n
di = di * -1
dj = dj * -1
END IF
NEXT k
FOR i = 1 TO n
FOR j = 1 TO n
PRINT USING "####"; a(i, j);
NEXT j
PRINT
NEXT i
SLEEP
END
板凳
njbkw [专家分:30] 发布于 2010-10-09 14:21:00
1楼答案错误,输出的图形和楼主要求的不一致。但是算法思想是对的!
3 楼
njbkw [专家分:30] 发布于 2010-10-09 14:31:00
FB程序,算法做了一点点改进
DIM AS INTEGER N
INPUT N
DIM AS INTEGER A(N,N),I,J,D,K
I = 1
J = 1
D = 1
FOR K = 1 TO N * N
A(I, J) = K
I = I - D
J = J + D
IF I > N THEN
I = N
J = J + 2
D = 1
ELSEIF J > N THEN
J = N
I = I + 2
D = -1
ELSEIF J < 1 THEN
J = 1
D = 1
ELSEIF I < 1 THEN
I = 1
D = -1
END IF
NEXT K
FOR I = 1 TO N
FOR J = 1 TO N
PRINT USING "####"; A(I, J);
NEXT J
PRINT
NEXT I
SLEEP
END
4 楼
我是中国龙 [专家分:0] 发布于 2010-11-02 20:19:00
CLS
INPUT N
DIM A(N, N)
FOR I = 1 TO N * 2 - 1
IF I <= N THEN
IF I MOD 2 = 0 THEN X = I + 1 ELSE X = 0
ELSE
IF I MOD 2 = 0 THEN X = X + 1
END IF
FOR J = 1 TO N - ABS(N - I)
IF I MOD 2 = 0 THEN X = X - 1 ELSE X = X + 1
K = K + 1: A(X, I + 1 - X) = K
NEXT J, I
FOR I = 1 TO N
FOR J = 1 TO N
PRINT USING "###"; A(I, J);
NEXT J: PRINT
NEXT I
END
5 楼
我是中国龙 [专家分:0] 发布于 2010-11-02 20:20:00
我这个绝对是对的
CLS
INPUT N
DIM A(N, N)
FOR I = 1 TO N * 2 - 1
IF I <= N THEN
IF I MOD 2 = 0 THEN X = I + 1 ELSE X = 0
ELSE
IF I MOD 2 = 0 THEN X = X + 1
END IF
FOR J = 1 TO N - ABS(N - I)
IF I MOD 2 = 0 THEN X = X - 1 ELSE X = X + 1
K = K + 1: A(X, I + 1 - X) = K
NEXT J, I
FOR I = 1 TO N
FOR J = 1 TO N
PRINT USING "###"; A(I, J);
NEXT J: PRINT
NEXT I
END
6 楼
幽灵密码 [专家分:3510] 发布于 2010-11-16 19:24:00
5楼很强!程序很简单而且正确!
我来回复