МАССИВЫ: расположить все элементы матрицы в строку в порядке убывания - Pascal ABC

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

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

Не могу понять в чем же ошибка

Решение задачи: «МАССИВЫ: расположить все элементы матрицы в строку в порядке убывания»

textual
Листинг программы
const m=3;
      n=4;
var a:array[1..m,1..n] of integer;
    i,j,k:byte;
    x:integer;
begin
randomize;
writeln('Исходная матрица:');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=-10+random(21);
    write(a[i,j]:4);
   end;
  writeln;
 end;
for i:=1 to m*n-1 do
for j:=i+1 to m*n do
if a[(i-1)div n+1,(i-1)mod n+1]>a[(j-1)div n+1,(j-1)mod n+1]
then
 begin
  x:=a[(i-1)div n+1,(i-1)mod n+1];
  a[(i-1)div n+1,(i-1)mod n+1]:=a[(j-1)div n+1,(j-1)mod n+1];
  a[(j-1)div n+1,(j-1)mod n+1]:=x;
 end;
writeln('Отсортированная матрица в строку:');
for i:=1 to m do
for j:=1 to n do
write(a[i,j]:4);
end.

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

  1. Объявляются переменные: m, n, a, i, j, k, x (массив, индексы, число).
  2. Задаются начальные значения матрицы a с помощью цикла randomize и random(21).
  3. Выводится исходная матрица с помощью цикла writeln.
  4. Сортировка матрицы по первому столбцу с помощью двух вложенных циклов for и условного оператора if.
  5. Задается значение переменной x и происходит обмен значениями между элементами матрицы a.
  6. Выводится отсортированная матрица в строку с помощью двух вложенных циклов for и функции writeln.
  7. Код завершается командой end.

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


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

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

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