Заполнить матрицу числами натурального ряда - QBasic

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста решить задачу (Заполнить матрицу А(N,N) числами натурального ряда в последовательности указанной на рисунке и найти их сумму.

Решение задачи: «Заполнить матрицу числами натурального ряда»

textual
Листинг программы
  1. CLS
  2. CONST n = 7
  3. DIM A(1 TO n, 1 TO n)
  4.  
  5. k = 1
  6.  
  7. FOR i = 1 TO n
  8. FOR j = 1 TO n
  9.    IF i <= n \ 2 + 1 AND i <= j AND i + j <= 8 THEN
  10.       A(i, j) = k
  11.       k = k + 1
  12.    ELSEIF i >= j AND i + j >= 8 THEN
  13.       A(i, j) = k
  14.       k = k + 1
  15.    END IF
  16. NEXT j, i
  17.  
  18. FOR i = 2 TO n STEP 2
  19. FOR j = 1 TO n \ 2
  20.    SWAP A(i, j), A(i, n + 1 - j)
  21. NEXT j, i
  22.  
  23. FOR i = 1 TO n
  24. FOR j = 1 TO n
  25.    PRINT USING "  ###"; A(i, j);
  26. NEXT j: PRINT
  27. NEXT i
  28. END

Объяснение кода листинга программы

  1. Задана переменная n со значением 7 (количество строк и столбцов матрицы).
  2. Создана матрица A размером 1x1 до 7x7.
  3. Задана переменная k со значением 1 (инициализация счетчика).
  4. Два вложенных цикла 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.
  5. Два вложенных цикла FOR меняют местами элементы матрицы A, начиная с элемента A(2,1), через один (элементы A(2,2), A(4,1), A(6,1) и т.д.).
  6. Два вложенных цикла FOR выводят значения элементов матрицы A на экран, используя формат вывода ###.
  7. Код заканчивается END.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы