Дан целочисленный массив размерностью N, заполненный случайными числами. Если N – чётное число, то поменять местами 4 элемента согласно следующей схеме. Иначе – увеличить каждый элемент массива на 5. Вывести на экран исходный и итоговый массивы.
Схема:
Answers & Comments
Verified answer
Если смотреть на рисунок, то при четном 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