Модификация алгоритма сортировки методом вставок
Подскажите, пожалуйста, каким образом, а точнее как реализовать модификацию алгоритма сортировки методом вставки (сортировка по невозрастанию) на PascalABC.NET. Код процедуры:
p:=0;
s:=0;
for i:= 2 to n do
if a[i-1]<a[i] then
begin
inc(s);
x:=a[i];
left:=1;
right:=i-1;
repeat
sred:=(left+right) div 2;
if a[sred]>x then
begin
left:=sred+1
end else
begin
right:=sred-1
end;
until left>right;
for j:=i-1 downto left do
begin
a[j+1]:=a[j];
end;
a[left]:=x;
inc(p);
end;
writeln('Присваиваний:',p);
writeln('Сравнений:',s);
Источник: Stack Overflow на русском