Не могу понять, вроде алгоритмически все правильно.
k:=2;
for p := n downto 2 do
for q := 1 to p - 1 do
if a[q, k] < a[q + 1, k] then
for j := 1 to m do begin
T := a[q, j];
a[q, j] := a[q + 1, j];
a[q + 1, j] := T;
end;
Благодарствую
Добавлено через 11 мин.
Не. Это не то :)Сортировка таблицы, т.е. пусть дана след. матрица:
(Может просто неудачно выразился Наверное, правильнее будет сортировка строк таблицы (матрицы) по возрастанию элементов k-ого столбца )
constТак?
n = 3;
m = 2;
type
vector = array[1 .. m] of integer;
var
i, j, k: integer;
a: array [1 .. n] of vector;
T: vector;
begin
for i:=1 to n do
for j:=1 to m do
read(a[i,j]);
writeln('Массив до сортировки: ');
for i:=1 to n do begin
for j:=1 to m do write(a[i,j]:3);
writeln;
end;
k := 2;
for i := 1 to n Do
for j := n downto i + 1 do
if a[pred(j)][k] > a[j][k] then begin
T := a[pred(j)]; a[pred(j)] := a[j]; a[j] := T
end;
writeln;
writeln('Массив после сортировки: ');
for i:=1 to n do begin
for j:=1 to m do write(a[i,j]:3);
writeln;
end;
end.