Сортировка матрицы "вставками" - Pascal ABC
Формулировка задачи:
Дан двумерный массив вещественных чисел A[1..n,1..m]. Напишите программу, которая упорядочит в убывающем порядке элементы каждого столбца матрицы А, используя метод сортировки вставками. Измененный массив вывести на экран.
Решение задачи: «Сортировка матрицы "вставками"»
textual
Листинг программы
uses crt; const nmax=10; var a:array[1..nmax,1..nmax] of real; n,m,i,j,k:integer; c:real; begin randomize; repeat write('Количество строк от 3 до ',nmax,' n='); readln(n); until n in [3..nmax]; repeat write('Количество столбцов от 3 до ',nmax,' m='); readln(m); until m in [3..nmax]; writeln('Исходный массив'); for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=10*random; write(a[i,j]:6:2); end; writeln; end; for j:=1 to m do begin for i:=2 to n do begin c:=a[i,j]; k:=i-1; while (k>=1) and (a[k,j]<c) do begin a[k+1,j]:=a[k,j]; k:=k-1; end; a[k+1,j]:=c; end; end; writeln('Сортировка столбцов'); for i:=1 to n do begin for j:=1 to m do write(a[i,j]:6:2); writeln; end; end.
Объяснение кода листинга программы
Этот код написан на языке Pascal ABC и выполняет следующие действия:
- Запрашивает у пользователя количество строк и столбцов матрицы, которые он хочет отсортировать.
- Создает матрицу заданного размера.
- Заполняет матрицу случайными числами.
- Сортирует строки матрицы вставками.
- Выводит отсортированную матрицу.
- Сортирует столбцы матрицы вставками.
- Выводит отсортированную матрицу.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д