const
nmax=101;
var
a:array[1..nmax,1..nmax] of longint;
n,i,j,maxi,maxj,v:longint;
begin
repeat
write('Введите нечётное n < ', nmax, ': ');
readln(n);
if not odd(n) then
writeln('n должно быть нечётно.');
if n>nmax then
writeln('n должно быть меньше ', nmax);
until (odd(n) and (n < nmax));
writeln('Ввод матрицы.');
for i:=1 to n do
for j:=1 to n do
begin
write('a[', i, ',', j, '] = ');
readln(a[i, j]);
end;
maxi:=1;
maxj:=1;
for i:=1 to n do
for j:=1 to n do
begin
if (a[maxi,maxj]<a[i, j]) then
begin
maxi := i;
maxj := j;
end;
if (a[maxi, maxj] < a[i, n - j + 1]) then
begin
maxi := i;
maxj := n - j + 1;
end;
end;
v:=a[maxi,maxj];
a[maxi,maxj]:=a[(n+1) div 2, (n+1) div 2];
a[(n+1) div 2, (n+1) div 2]:=v;
writeln('После обработки матрица принела следующий вид: ');
for i:=1 to n do
begin
for j:=1 to n do
write(a[i, j], ' ');
writeln;
end;
end.