Заполнить матрицу числами натурального ряда - QBasic
Формулировка задачи:
Помогите пожалуйста решить задачу (Заполнить матрицу А(N,N) числами натурального ряда в последовательности указанной на рисунке и найти их сумму.
Решение задачи: «Заполнить матрицу числами натурального ряда»
textual
Листинг программы
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
Объяснение кода листинга программы
- Задана переменная
n
со значением 7 (количество строк и столбцов матрицы). - Создана матрица
A
размером 1x1 до 7x7. - Задана переменная
k
со значением 1 (инициализация счетчика). - Два вложенных цикла
FOR
заполняют матрицуA
числами натурального ряда от 1 до 7, начиная с элементаA(1,1)
. Условие заполнения матрицы:- Если
i
меньше или равноn/2 + 1
,j
меньше или равноn
, иi + j
меньше или равно 8, то элементA(i,j)
принимает значениеk
, аk
увеличивается на 1. - Если
i
больше или равноj
, иi + j
больше или равно 8, то элементA(i,j)
принимает значениеk
, аk
увеличивается на 1.
- Если
- Два вложенных цикла
FOR
меняют местами элементы матрицыA
, начиная с элементаA(2,1)
, через один (элементыA(2,2)
,A(4,1)
,A(6,1)
и т.д.). - Два вложенных цикла
FOR
выводят значения элементов матрицыA
на экран, используя формат вывода###
. - Код заканчивается END.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д