
Кассиан
6 год назад
Необходимо написать программу на языке pascal
Задан двумерный массив целых чисел размером n*m
Поменять местами в каждом столбце первый элемент с первым максимальным
---
алгоритм на фото

ОТВЕТЫ

Каллистрат
Jul 8, 2019
Const
nn=50; { максимально возможное кол-во строк }
mm=50; { максимально возможное кол-во столбцов }
var
a:array[1..nn,1..mm] of integer;
i,j,m,n,imax,t:integer;
begin
Write(Количество строк в массиве: ); Read(n);
Write(Количество столбцов в массиве: ); Read(m);
Writeln(Вводите элементы массива);
for i:=1 to n do
for j:=1 to m do Read(a[i,j]);
for j:=1 to m do begin
imax:=1;
for i:=2 to n do
if a[i,j]gt;a[imax,j] then imax:=i;
if ilt;gt;1 then begin
t:=a[1,j]; a[1,j]:=a[imax,j]; a[imax,j]:=t
end
end;
Writeln(Результат);
for i:=1 to n do begin
for j:=1 to m do Write(a[i,j]:3);
Writeln
end
end.
nn=50; { максимально возможное кол-во строк }
mm=50; { максимально возможное кол-во столбцов }
var
a:array[1..nn,1..mm] of integer;
i,j,m,n,imax,t:integer;
begin
Write(Количество строк в массиве: ); Read(n);
Write(Количество столбцов в массиве: ); Read(m);
Writeln(Вводите элементы массива);
for i:=1 to n do
for j:=1 to m do Read(a[i,j]);
for j:=1 to m do begin
imax:=1;
for i:=2 to n do
if a[i,j]gt;a[imax,j] then imax:=i;
if ilt;gt;1 then begin
t:=a[1,j]; a[1,j]:=a[imax,j]; a[imax,j]:=t
end
end;
Writeln(Результат);
for i:=1 to n do begin
for j:=1 to m do Write(a[i,j]:3);
Writeln
end
end.
66
Смежные вопросы: