Переставляя строки и столбцы, добиться, чтобы максимальных элемент матрицы переместился в левый верхний угол - QBasic
Формулировка задачи:
Дана матрица целых чисел X(n,m). Переставляя строки и столбцы, добиться, чтобы максимальных элемент матрицы переместился в левый верхний угол. Вывести исходную и полученную матрицы. Значения буквенных переменных задавать с клавиатуры.
Заранее благодарен.
Решение задачи: «Переставляя строки и столбцы, добиться, чтобы максимальных элемент матрицы переместился в левый верхний угол»
textual
Листинг программы
- REM Дана матрица целых чисел X(n,m). Переставляя строки и столбцы,
- REM добиться, чтобы максимальных элемент матрицы переместился в левый верхний угол.
- REM Вывести исходную и полученную матрицы. Значения буквенных переменных задавать с клавиатуры.
- REM QBasic, lamed, 17.05.2011
- INPUT m
- INPUT n
- DIM a(1 TO m, 1 TO n)
- FOR i = 1 TO m
- FOR j = 1 TO n
- INPUT a(i, j)
- NEXT j
- NEXT i
- imax = 1
- jmax = 1
- FOR i = 1 TO m
- FOR j = 1 TO n
- IF a(i, j) > a(imax, jmax) THEN
- imax = i
- jmax = j
- END IF
- NEXT j
- NEXT i
- PRINT "Исходная"
- FOR i = 1 TO m
- FOR j = 1 TO n
- PRINT USING "####"; a(i, j);
- NEXT j
- NEXT i
- REM меняем строки
- FOR j = 1 TO n
- x = a(1, j)
- a(1, j) = a(imax, j)
- a(imax, j) = x
- NEXT j
- PRINT "Поменяли строки"
- FOR i = 1 TO m
- FOR j = 1 TO n
- PRINT USING "####"; a(i, j);
- NEXT j
- NEXT i
- REM меняем столбцы
- FOR i = 1 TO m
- x = a(i, 1)
- a(i, 1) = a(i, jmax)
- a(i, jmax) = x
- NEXT i
- PRINT "Поменяли столбцы"
- FOR i = 1 TO m
- FOR j = 1 TO n
- PRINT USING "####"; a(i, j);
- NEXT j
- NEXT i
- END
Объяснение кода листинга программы
- Задаются исходные размеры матрицы с помощью ввода с клавиатуры.
- Матрица заполняется случайными значениями с помощью ввода с клавиатуры.
- Находится максимальное значение в матрице и его позиции с помощью двух циклов.
- Строки меняются таким образом, чтобы максимальное значение оказалось в левом верхнем углу.
- Столбцы меняются таким образом, чтобы максимальное значение оказалось в левом верхнем углу.
- Выводятся исходная и полученная матрицы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д