Создать двумерный массив целых случайных чисел размерность 7*4 и отсортировать по убыванию последние две строки. вывести на экран исходный и измененный массивы.можно использовать любой метод сортировки

beksedaniar beksedaniar    3   31.07.2019 14:40    0

Ответы
zagidsadikov zagidsadikov  03.10.2020 18:41
//Pascal ABC.NET 3.1 сборка 1219

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.
ПОКАЗАТЬ ОТВЕТЫ
Татьяна1301 Татьяна1301  03.10.2020 18:41
(Пишу в блокноте, возможны ошибки синтаксиса) 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;

end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика