Требуется заполнить матрицу как на рисунке.
Вероятно это можно сделать и проще, но я сделал так.
Вопрос
годится ли мой код, если бы n = 6?
Код:
CLS
CONST n = 7
DIM A(1 TO n, 1 TO n)
k = 1
FOR i = 1 TO n
FOR j = 1 TO n
IF i <= n \ 2 + 1 AND i <= j AND i + j <= 8 THEN
A(i, j) = k
k = k + 1
ELSEIF i >= j AND i + j >= 8 THEN
A(i, j) = k
k = k + 1
END IF
NEXT j, i
FOR i = 2 TO n STEP 2
FOR j = 1 TO n \ 2
SWAP A(i, j), A(i, n + 1 - j)
NEXT j, i
FOR i = 1 TO n
FOR j = 1 TO n
PRINT USING " ###"; A(i, j);
NEXT j: PRINT
NEXT i
END