Написать программу на паскале. Создать двухмерный массив из целых чисел, в котором поменять местами максимальный и минимальный элементы. Помогите пж.
Answers & Comments
StrangeT
Const NN=50; Var a:array [1..NN,1..NN] of integer; maxi,maxj,mini,minj,i,j,n,m:integer; begin writeln('Введите кол-во строк и столбцов массива: '); readln(n,m); for i:= 1 to n do for j:= 1 to m do begin write('a[',i,',',j,']= '); readln(a[i,j]); end; writeln; writeln('Получившийся массив: '); for i:= 1 to n do begin for j:= 1 to m do write(a[i,j]:4); writeln; end; maxi:=1; maxj:=1; mini:=1; minj:=1; for i:= 1 to n do for j:= 1 to m do begin if a[i,j]>a[maxi,maxj] then begin maxi:=i; maxj:=j; end else if a[i,j]<a[mini,minj] then begin mini:=i; minj:=j; end; end; writeln; writeln('Получившийся массив: '); i:=a[maxi,maxj]; a[maxi,maxj]:=a[mini,minj]; a[mini,minj]:=i; for i:= 1 to n do begin for j:= 1 to m do write(a[i,j]:4); writeln; end; end.
Answers & Comments
Var
a:array [1..NN,1..NN] of integer;
maxi,maxj,mini,minj,i,j,n,m:integer;
begin
writeln('Введите кол-во строк и столбцов массива: ');
readln(n,m);
for i:= 1 to n do
for j:= 1 to m do
begin
write('a[',i,',',j,']= ');
readln(a[i,j]);
end;
writeln; writeln('Получившийся массив: ');
for i:= 1 to n do
begin
for j:= 1 to m do
write(a[i,j]:4);
writeln;
end;
maxi:=1;
maxj:=1;
mini:=1;
minj:=1;
for i:= 1 to n do
for j:= 1 to m do
begin
if a[i,j]>a[maxi,maxj] then
begin
maxi:=i;
maxj:=j;
end
else if a[i,j]<a[mini,minj] then
begin
mini:=i;
minj:=j;
end;
end;
writeln; writeln('Получившийся массив: ');
i:=a[maxi,maxj];
a[maxi,maxj]:=a[mini,minj];
a[mini,minj]:=i;
for i:= 1 to n do
begin
for j:= 1 to m do
write(a[i,j]:4);
writeln;
end;
end.