В двух матрицах строки расположить в порядке убывания элементов первого столбца - Pascal

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

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

Я наверное всех уже достал. Извините пожалуйста и не откажите еще в одной услуге. В двух матрицах строки расположить в порядке убывания элементов первого столбца.

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

textual
Листинг программы
uses crt;
const nmax=20;
type  matr=array[1..nmax,1..nmax] of integer;
procedure Vvod(var mt:matr;var x,y:byte;c:char);
var i,j:byte;
begin
writeln('Матрица ',c);
repeat
write('Количество строк=');readln(x);
until x in [1..10];
repeat
write('Количество столбцов=');readln(y);
until y in [1..15];
for i:=1 to x do
for j:=1 to y do
mt[i,j]:=random(40)+10;
end;
procedure Vyvod(var mt:matr;x,y:byte);
var i,j:byte;
begin
for i:=1 to x do
 begin
  for j:=1 to y do
  write(mt[i,j]:4);
  writeln;
 end;
end;
procedure Sort(var mt:matr;x,y:byte);
var i,j,k:byte;
    b:integer;
begin
for i:=1 to x-1 do
for k:=i+1 to x do
if mt[i,1]<mt[k,1] then
for j:=1 to y do
 begin
  b:=mt[i,j];
  mt[i,j]:=mt[k,j];
  mt[k,j]:=b;
 end;
end;
var a,b:matr;
    na,ma,nb,mb:byte;
begin
clrscr;
randomize;
Vvod(a,na,ma,'A');
writeln('Исходная матрица:');
Vyvod(a,na,ma);
Sort(a,na,ma);
writeln('Строки упорядочены по убыванию первого элемента::');
Vyvod(a,na,ma);
write('Pres Enter...');
readln;
Vvod(b,nb,mb,'B');
writeln('Исходная матрица:');
Vyvod(b,nb,mb);
Sort(b,nb,mb);
writeln('Строки упорядочены по убыванию первого элемента::');
Vyvod(b,nb,mb);
write('Pres Enter...');
readln
end.

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

  1. В процедуре Vvod считываются данные для ввода матрицы.
  2. Переменные i, j и k используются в процедуре сортировки.
  3. В процедуре Vyvod выводится матрица с помощью функции write.
  4. В процедуре Sort происходит сортировка матрицы по убыванию первого столбца.
  5. Переменные a, b, na, ma, nb и mb используются для работы с двумя матрицами.
  6. Функция randomize используется для генерации случайных чисел.
  7. Процесс ввода и вывода матрицы повторяется до тех пор, пока пользователь не введет 'B'.
  8. После этого начинается второй этап ввода и вывода матрицы.
  9. Процесс ввода и вывода матрицы повторяется до тех пор, пока пользователь не введет 'B'.
  10. В конце программы выводится сообщение Pres Enter....

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


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

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

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