Для откладки чисел элементы массива сформировать с помощью генератора случайных чисел.
program PascalGuru;
var
A: array [1 .. 50, 1 .. 50] of integer; { объявление переменных }
n, m, i, j, maxi, maxj, nn: integer;
swop: boolean;
procedure exchange(var A, b: integer); { процедура обмена }
var
c: integer;
begin
c := A;
A := b;
b := c;
end; { *** конец процедуры обмена }
{ -------------------------------------- }
begin
randomize;
write('N= ');
readln(n); { ввод кол-ва строк }
write('M= ');
readln(m); { ввод кол-ва столбцов }
for i := 1 to n do
for j := 1 to m do
A[i, j] := (-3) + random(26); { заполнение элементов матрицы }
for i := 1 to n do
begin
writeln;
for j := 1 to m do
write(A[i, j]:8);
end; { вывод матрицы на экран }
writeln;
writeln;
maxi := 1; { начальная координата MAX строки }
maxj := 1; { начальная координата MAX столбца }
for i := 1 to n do
for j := 1 to m do { ниже вычисляем координаты MAX эл-та }
if A[i, j] > A[maxi, maxj] then
begin
maxi := i;
maxj := j;
end;
writeln('Koordinaty MAX: A[', maxi, ',', maxj, ']'); { вывод MAX }
writeln;
nn := m; { в дополнительную переменную записываем первоначальное кол-во столбцов }
repeat { начало цикла сортировки }
swop := false;
for i := 1 to nn - 1 do
if A[maxi, i] > A[maxi, i + 1] then
begin { сортируем только НУЖНУЮ нам строку }
exchange(A[maxi, i], A[maxi, i + 1]);
swop := true;
end; { сортируем только НУЖНУЮ нам строку }
nn := nn - 1;
until not swop; { ---конец цикла сортировки }
writeln('Stroka ', maxi, ':');
for j := 1 to m do
write(A[maxi, j]:8); { вывод отсортированной строки }
readln;
end.