uses crt;
var a,b:array[1..100] of integer;
n,m,i,j,x,k:integer;
begin
clrscr;
randomize;
write('Размер массива n=');
readln(n);
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(20)-9;
write(a[i],' ');
end;
writeln;
m:=n;{запомним длину исходного массива}
i:=m;{встаем в конец масива}
while i>=1 do{идем к началу, чтоб не менялись индексы неудаленных элемеентов}
begin
if i mod 3=0 then{если третий}
begin
for j:=i to m-1 do{сдвигаем к нему конец массива, он исчезает}
a[j]:=a[j+1];
m:=m-1;{уменьшаем размер массива}
i:=i-1;{к след. элементу}
end
else i:=i-1;{если не третий, то сразу к следующему}
end;
writeln('Сжатый массив:');
for i:=1 to m do
write(a[i],' ');
writeln;
for i:=2 to m do{сортировка включениями, читайте теорию}
begin
x:=a[i];
j:=1;
while x>a[j] do inc(j);
for k:=i-1 downto j do a[k+1]:= a[k];
a[j]:=x;
end;
writeln('Отсортированный массив:');
for i:=1 to m do
write(a[i],' ');
readln
end.