Массив: представить числа так, чтобы матрица стала отсортированной - QBasic

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

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

http://imgur.com/FOUzMzC

Решение задачи: «Массив: представить числа так, чтобы матрица стала отсортированной»

textual
Листинг программы
CLS
INPUT "N,M ="; n, m
DIM A(1 TO n, 1 TO m) AS INTEGER
DIM B(1 TO n * m)  AS INTEGER
 
FOR i = 1 TO n
   FOR j = 1 TO m
      A(i, j) = 20 * RND
      PRINT USING "####"; A(i, j);
   NEXT j
   PRINT
NEXT i
 
PRINT
 
FOR i = 1 TO n
FOR j = 1 TO m
   B(m * (i - 1) + j) = A(i, j)
NEXT j
NEXT i
 
FOR i = 1 TO n * m - 1
FOR j = i + 1 TO n * m
   IF B(i) > B(j) THEN SWAP B(i), B(j)
NEXT j
NEXT i
 
c = 1
 
FOR k = 2 TO n + m
FOR i = 1 TO n
FOR j = 1 TO m
   IF i + j = k THEN A(i, j) = B(c): c = c + 1
NEXT j
NEXT i
NEXT k
 
FOR i = 1 TO n
   FOR j = 1 TO m
      PRINT USING "####"; A(i, j);
   NEXT j
   PRINT
NEXT i
 
END

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

В этом коде выполняется сортировка массива A методом сортировки пузырьком, после чего элементы массива B, которые были использованы для временного хранения, переносятся обратно в массив A. Вот список действий, которые происходят в коде:

  1. Ввод размеров массива A с помощью функции INPUT.
  2. Инициализация массива A случайными значениями.
  3. Инициализация массива B, который будет использоваться для временного хранения.
  4. Два вложенных цикла, которые проходят по всем элементам массива A.
  5. Внутренний цикл внутри внешнего цикла проходит по всем элементам массива B.
  6. Передача значений из массива A в массив B.
  7. Два вложенных цикла, которые проходят по всем элементам массива B.
  8. Внутренний цикл внутри внешнего цикла проходит по всем элементам массива B.
  9. Если значение элемента B(i) больше значения элемента B(j), то происходит обмен значениями.
  10. Передача значений из массива B обратно в массив A.
  11. Два вложенных цикла, которые проходят по всем элементам массива A.
  12. Внутренний цикл внутри внешнего цикла проходит по всем элементам массива A.
  13. Вывод отсортированного массива A.
  14. Завершение работы программы.

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


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

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

13   голосов , оценка 3.615 из 5
Похожие ответы