Was mir sofort ins Auge gesprungen ist, ist das
right
bei ungeraden Längen zu klein ist:
Delphi-Quellcode:
mid:=trunc(counter/2);
setlength(left,mid);
setlength(right,mid)
Einfache Beispiel:
counter = 3
=>
length(left) = 1
und
length(right) = 1
. Hier kracht es dann bei
i = 2
:
for i:= mid to counter-1 do right[i-mid]:=A[i];
Besser wäre:
Delphi-Quellcode:
mid:=counter div 2;
setlength(left,mid);
setlength(right,counter-mid)
Den Rest hab ich mir nicht weiter angeguckt.
Noch etwas zum Schluss: auch wenn es diesmal funktioniert hat, die Shoutbox ist nicht zum Pushen der eigenen Themen da
Nach frühesten 24h kannst du das eigene Thema auch nochmal pushen, indem du darauf antwortest. Auch das sollte man nicht übertreiben.