Сама задача.
В данной действительной матрице 6х9 поменять местами строку, содержащую элемент с наибольши значение. предпологается, что эти элементы единственные.
Ошибку я нашёл осталась одна проблема когда хочешь получит результат программа выдаёт сразу вторую строку а потом по максимальной как это исправить
Код: Выделить всё
Program matr;
var
mat:array[1..6,1..9] of integer;
i, j, nMax: byte;
max, item: integer;
BEGIN
randomize;
for i:=1 to 6 do
begin
for j:=1 to 9 do
begin
mat[i,j]:=integer (random(100))-50;
write(mat[i,j]:4,' ');
end;
writeln;
end;
max:=mat[1,1];
nMax:=1;
for i:=1 to 6 do
for j:=1 to 9 do
if mat[i,j]>max
then
begin
nMax:=i;
max:=mat[i,j];
end;
if nMax=1
then
for j:=1 to 9 do
begin
item:=mat[nMax, j];
mat[nMax, j]:=mat[nMax+1, j];
mat[nMax+1, j]:=item
end
else
for j:=1 to 9 do
begin
item:=mat[nMax, j];
mat[nMax, j]:=mat[nMax-1, j];
mat[nMax-1, j]:=item
end;
for i:=1 to 6 do
begin
for j:=1 to 9 do
write (mat [i, j], ' ');
writeLn;
readln
end
END.