Упорядочить столбцы матрицы по убыванию используя метод выбора - Turbo Pascal

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

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

дана вещественная матрица D 7x9. Упорядочить ее столбцы по убыванию используя метод выбора (поиском максимума).

Решение задачи: «Упорядочить столбцы матрицы по убыванию используя метод выбора»

textual
Листинг программы
uses crt;
const m=7;
      n=9;
var d:array[1..m,1..n] of integer;
    i,j,k,mx,buf:integer;
begin
clrscr;
randomize;
writeln('Исходная матрица:');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    d[i,j]:=random(100);
    write(d[i,j]:4);
   end;
  writeln
 end;
for j:=1 to n do
 begin
  for i:=1 to m-1 do
   begin
    mx:=i;
    for k:=i+1 to m do
    if d[k,j]>d[mx,j] then mx:=k;
    buf:=d[i,j];
    d[i,j]:=d[mx,j];
    d[mx,j]:=buf;
   end;
 end;
writeln('Сортировка столбцов:');
for i:=1 to m do
 begin
  for j:=1 to n do
  write(d[i,j]:4);
  writeln
 end;
readln
end.

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

Данный код написан на языке Turbo Pascal и выполняет сортировку столбцов матрицы по убыванию методом выбора. Переменные:

  • m и n - соответственно количество строк и столбцов в матрице;
  • d - матрица целых чисел размером m x n;
  • i, j, k, mx, buf - счетчики и временные переменные для внутреннего цикла сортировки. Внутренний цикл, который выполняется дважды (для каждой строки матрицы), отвечает за выбор максимального элемента из текущей строки и перестановку элементов местами. Первая часть внутреннего цикла (до второго цикла) заполняет матрицу случайными числами от 0 до 99. Вторая часть внутреннего цикла (после второго цикла) выполняет сортировку столбцов матрицы по убыванию. Для этого используется переменная mx, которая инициализируется значением первого элемента матрицы (первой строки). Затем, в цикле, проверяется, если текущий элемент (второй столбец) больше предыдущего максимального элемента (mx), то mx обновляется на текущий элемент. После этого, в конце внутреннего цикла, сортированный столбец копируется в буфер (переменная buf), а затем записывается в исходный столбец. Внешний цикл (после внутренних циклов) выводит отсортированные столбцы матрицы на экран.

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


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

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

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