uses crt;
var m : array[1..100]of integer;
i, k, N, b, j, n1, n2 : integer;
begin
clrscr;
randomize;
N := 15;
writeln('Исходный массив');
for i:=1 to N do
begin
m[i] := -20 + random(71);
write(m[i],' ');
end;
i := 1;
while i <= N do
begin
if (abs(m[i]) mod 10 = 5) or (abs(m[i]) div 10 = 5) then
begin
for j := i to N do m[j] := m[j+1];
dec(N);
end else inc(i);
end;
writeln;
writeln('После удаления из него элементов, где есть пятёрка');
for i:=1 to N do write(m[i],' ');
writeln('K -> ');
readln(K);
i := 1;
while i <= N do
begin
if abs(m[i]) mod i = 0 then
begin
inc(N);
for j:=N downto i+1 do m[j]:=m[j-1];
m[i]:=k;
i := i + 2;
end else inc(i);
end;
writeln;
writeln('После вставки элемена K');
for i:=1 to N do write(m[i],' ');
n1 := 1;
while (n1 <= N) and (m[n1] <= 0) then inc(n1);
n2 := N;
while (n1 >= 1) and (m[n2] >= 0) then dec(n2);
b := m[n1];
m[n1] := m[n2];
m[n2] := b;
writeln;
writeln('После перестановки элементов');
for i:=1 to N do write(m[i],' ');
readln;
end.