Сортировка столбцов матрицы по невозрастанию - PascalABC.NET
Формулировка задачи:
Отсортировать элементы двумерного массива так чтобы суммы значений в каждом столбце образовывали невозрастающую последовательность.Код я нацарапан но сортировку суммы значений не могу сделать код прилагаю . Попытки сортировки начинаются с 30 строчки
Решение задачи: «Сортировка столбцов матрицы по невозрастанию»
textual
Листинг программы
const m = 5; n = 4; var a: array[1..m+1,1..n] of byte; i,j,k,sum,x: byte; begin randomize; writeln('Исходная матрица'); for i := 1 to m do begin write(' '); for j := 1 to n do begin a[i,j] := random(10); write (a[i,j]:3) end; writeln end; write('Сумма'); for j:=1 to n do begin a[m+1,j]:=0; for i:=1 to n do inc(a[m+1,j],a[i,j]); write(a[m+1,j]:3); end; writeln; for j:=1 to n-1 do for k:=j+1 to n do if a[m+1,j]<a[m+1,k] then for i:=1 to m+1 do begin x:=a[i,j]; a[i,j]:=a[i,k]; a[i,k]:=x; end; writeln('Столбцы упорядочены по невозрастаию сумм'); for i := 1 to m do begin write(' '); for j := 1 to n do write (a[i,j]:3); writeln end; write('Сумма'); for j:=1 to n do write(a[m+1,j]:3); end.
Объяснение кода листинга программы
В данном коде решается задача сортировки столбцов матрицы по невозрастанию суммы элементов. Список действий:
- Задаются исходные данные: размеры матрицы m и n, инициализируются случайными значениями элементы матрицы a.
- Выводится исходная матрица.
- Вычисляются суммы элементов каждого столбца, записываются в столбец a[m+1,].
- Выводится столбец a[m+1,].
- Производится сортировка столбцов a[m+1,].
- Выводится отсортированный столбец a[m+1,].
- Выводится итоговая матрица.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д