Создать двумерный массив целых случайных чисел размерность 7*4 и отсортировать по убыванию последние две строки. вывести на экран исходный и измененный массивы.можно использовать любой метод сортировки
Var ma:array[1..n,1..m] of integer; i,j:integer; begin randomize; writeln('Matrix:'); for i:=1 to n do begin for j:=1 to m do begin ma[i,j]:=random(50); write(ma[i,j]:4); end; writeln; end; for i:=1 to m-1 do for j:=i+1 to m do begin if ma[n,i]<ma[n,j] then swap(ma[n,i],ma[n,j]); if ma[n-1,i]<ma[n-1,j] then swap(ma[n-1,i],ma[n-1,j]); end; writeln('Final matrix:'); for i:=1 to n do begin for j:=1 to m do write(ma[i,j]:4); writeln; end; end.
(Пишу в блокноте, возможны ошибки синтаксиса) Pascal:
var mas:array[1..7,1..4] of integer; i,i2,i3,tmp:integer;
begin for i:=1 to 4 do for i2:=1 to 7 do mas[i,i2]:=random(100); //присвоение рандома массиву
for i:=1 to 4 do begin for i2:=1 to 7 do writeln(inttostr(mas[i,i2])); writeln; end; //Вывод исходного массива
for i3:=3 to 4 do for i:=1 to 7 do for i2:=1 to 6 do if mas[i2+1,i3] >mas[i2,i3] then begin tmp:=mas[i2,i3]; mas[i2,i3]:=mas[i2+1,i3]; mas[i2+1,i3]:=tmp; end; //сортировка последних строк
for i:=1 to 4 do begin for i2:=1 to 7 do writeln(inttostr(mas[i,i2])); writeln; end; //Вывод измененного массива readln;
Const
n=7;
m=4;
Var
ma:array[1..n,1..m] of integer;
i,j:integer;
begin
randomize;
writeln('Matrix:');
for i:=1 to n do
begin
for j:=1 to m do
begin
ma[i,j]:=random(50);
write(ma[i,j]:4);
end;
writeln;
end;
for i:=1 to m-1 do
for j:=i+1 to m do
begin
if ma[n,i]<ma[n,j] then swap(ma[n,i],ma[n,j]);
if ma[n-1,i]<ma[n-1,j] then swap(ma[n-1,i],ma[n-1,j]);
end;
writeln('Final matrix:');
for i:=1 to n do
begin
for j:=1 to m do
write(ma[i,j]:4);
writeln;
end;
end.
var mas:array[1..7,1..4] of integer;
i,i2,i3,tmp:integer;
begin
for i:=1 to 4 do
for i2:=1 to 7 do
mas[i,i2]:=random(100); //присвоение рандома массиву
for i:=1 to 4 do
begin
for i2:=1 to 7 do
writeln(inttostr(mas[i,i2]));
writeln;
end; //Вывод исходного массива
for i3:=3 to 4 do
for i:=1 to 7 do
for i2:=1 to 6 do
if mas[i2+1,i3] >mas[i2,i3] then
begin
tmp:=mas[i2,i3];
mas[i2,i3]:=mas[i2+1,i3];
mas[i2+1,i3]:=tmp;
end; //сортировка последних строк
for i:=1 to 4 do
begin
for i2:=1 to 7 do
writeln(inttostr(mas[i,i2]));
writeln;
end; //Вывод измененного массива
readln;
end.