Если смотреть на рисунок, то при четном N менять местами следует не 4 элемента, а одну половину элементов с другой половиной. Для этого случая программа будет такой:
const m=20;
var x : array[1..m] of integer;
i, n, k : integer;
begin
Randomize;
n:=random(16)+5;
writeln('N=',n);
writeln('Исходный массив:');
for i:=1 to n do
begin
x[i]:=random(101)-50;
write(x[i]:4);
end;
writeln;
if n mod 2 =0 then
for i:=1 to n div 2 do
begin
k:=x[i]; x[i]:=x[n+1-i]; x[n+1-i]:=k;
end
else for i:=1 to n do x[i]:=x[i]+5;
writeln('Измененный массив:');
for i:=1 to n do write(x[i]:4);
writeln;
end.
Пример:
N=6
Исходный массив:
16 45 -32 -28 -3 23
Измененный массив:
23 -3 -28 -32 45 16