Const m1 = 10; n1 = 8; var x: array[1..m1, 1..n1] of integer; i, j, m, n, t: integer; begin Write('Введите через пробел число строк и столбцов матрицы: '); Read(m,n); Randomize; Writeln('Исходная матрица'); for i:= 1 to m do begin for j:=1 to n do begin x[i,j]:= Random(50)+1; Write(x[i,j]:3) end; Writeln end; { простая обменная сортировка первого столбца } for i:=1 to m-1 do for j:=1 to m-1 do if x[j,1]>x[j+1,1] then begin t:=x[j,1]; x[j,1]:=x[j+1,1]; x[j+1,1]:=t end; Writeln('Результирующая матрица'); for i:= 1 to m do begin for j:=1 to n do Write(x[i,j]:3); Writeln end end.
Const n=20; var a:array[1..n] of integer; i,j,k,x:integer; begin Randomize; Writeln('Исходная последовательность'); for i:=1 to n do begin a[i]:=Random(50)+1; Write(a[i]:3) end; Writeln; for i:=1 to n-1 do begin k:=i; x:=a[i]; for j:=i+1 to n do if a[j]<x then begin k:=j; x:=a[j] end; a[k]:=a[i]; a[i]:=x end; Writeln('После сортировки'); for i:=1 to 20 do begin Write(a[i]:3) end; Writeln end.
m1 = 10;
n1 = 8;
var
x: array[1..m1, 1..n1] of integer;
i, j, m, n, t: integer;
begin
Write('Введите через пробел число строк и столбцов матрицы: ');
Read(m,n);
Randomize;
Writeln('Исходная матрица');
for i:= 1 to m do begin
for j:=1 to n do begin
x[i,j]:= Random(50)+1;
Write(x[i,j]:3)
end;
Writeln
end;
{ простая обменная сортировка первого столбца }
for i:=1 to m-1 do
for j:=1 to m-1 do
if x[j,1]>x[j+1,1] then
begin t:=x[j,1]; x[j,1]:=x[j+1,1]; x[j+1,1]:=t end;
Writeln('Результирующая матрица');
for i:= 1 to m do begin
for j:=1 to n do Write(x[i,j]:3);
Writeln
end
end.
Тестовое решение:
Введите через пробел число строк и столбцов матрицы: 10 8
Исходная матрица
44 28 35 45 28 21 24 31
39 10 1 27 33 3 7 39
22 8 45 4 33 11 23 37
18 50 48 12 45 28 1 32
3 25 45 11 40 49 47 17
28 16 46 43 11 13 22 18
27 24 45 33 44 44 34 34
6 49 27 28 24 13 37 12
9 19 25 8 8 47 49 24
11 29 26 18 16 30 27 6
Результирующая матрица
3 28 35 45 28 21 24 31
6 10 1 27 33 3 7 39
9 8 45 4 33 11 23 37
11 50 48 12 45 28 1 32
18 25 45 11 40 49 47 17
22 16 46 43 11 13 22 18
27 24 45 33 44 44 34 34
28 49 27 28 24 13 37 12
39 19 25 8 8 47 49 24
44 29 26 18 16 30 27 6
n=20;
var
a:array[1..n] of integer;
i,j,k,x:integer;
begin
Randomize;
Writeln('Исходная последовательность');
for i:=1 to n do begin a[i]:=Random(50)+1; Write(a[i]:3) end;
Writeln;
for i:=1 to n-1 do begin
k:=i; x:=a[i];
for j:=i+1 to n do
if a[j]<x then begin k:=j; x:=a[j] end;
a[k]:=a[i]; a[i]:=x
end;
Writeln('После сортировки');
for i:=1 to 20 do begin Write(a[i]:3) end;
Writeln
end.
Тестовое решение:
Исходная последовательность
6 37 19 32 34 48 28 8 15 50 25 37 14 12 28 10 15 40 29 10
После сортировки
6 8 10 10 12 14 15 15 19 25 28 28 29 32 34 37 37 40 48 50