Аватар
Информатика, опубликовано 2018-08-22 19:11:28 by Гость

Заполнить двухмерный массив NxN Найти максимальный элемент, стоящий на главной и побочной диагоналях. Поменять его местами с элементом стоящим на пересечении этих диагоналей.

Аватар
Ответ оставил Гость

Const n=5; // обязательно должно быть нечетным
var
  i,j,max,x,k:integer;
  a:array[1..n,1..n]of integer;
begin
writeln(Исходный массив:);
for i:=1 to n do
  begin
  for j:=1 to n do
    begin
    a[i,j]:=random(20);
    write(a[i,j]:4);
    end;
  writeln;
  end;
max:=a[1,1];
for i:=1 to n do
  begin
  if a[i,i]>max then max:=a[i,i];
  if a[i,n+1-i]>max then max:=a[i,n+1-i];
  end;
k:=n div 2+1;
x:=a[k,k];
for i:=1 to n do
  begin
  if a[i,i]=max
  then a[i,i]:=x;
  if a[n+1-i,i]=max then a[n+1-i,i]:=x;
  end;
a[k,k]:=max;
writeln(Измененный массив:);
for i:=1 to n do
  begin
  for j:=1 to n do
    write(a[i,j]:4);
  writeln
  end
end.

Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.