uses crt;
const n=4;
var b:array[1..n,1..n] of integer;
i,j,k:byte;
x:integer;
begin
clrscr;
writeln('Исходная матрица:');
for i:=1 to n do
begin
for j:=1 to n do
begin
b[i,j]:=random(50);
write(b[i,j]:4);
end;
writeln;
end;
writeln;
for j:=1 to n do
for i:=1 to n-1 do
for k:=i+1 to n do
if b[i,j]>b[k,j] then
begin
x:=b[i,j];
b[i,j]:=b[k,j];
b[k,j]:=x;
end;
writeln('Столбцы отсортированы по возрастанию:');
for i:=1 to n do
begin
for j:=1 to n do
write(b[i,j]:4);
writeln;
end;
readln
end.