Hi Walker,
habe mir so eben dein Programm nochmal angeschaut. Als erstes etwas zu MergeSort.
Wenn ich auf den Button MergeSort drücke, wird nur folgender Code ausgeführt:
Delphi-Quellcode:
procedure mischsortiere (links, rechts : integer);
var mitte : integer;
begin
if feld[links] < feld[rechts] then
begin
mitte := (links + rechts) div 2;
mischsortiere (links, mitte);
mischsortiere (mitte + 1, rechts);
end;
end;
begin
mischsortiere(1, count);
begin
for i := 1 to count do
ListBox3.Items.Add(FloatToStr(feld[i]));
end;
end;
Es werden dabei nur die Zahlen in der Reihenfolge ausgegeben, wie sie in der ListBox1 stehen, sprich sie sind noch unsortiert.
Die Prozedur
mische wird bei Drücken des Button nicht mit aufgerufen.
Ich würde vorschlagen(wegen besserer Übersicht), dass du die einzelnen Prozeduren in private bzw public deklarierst und sie nicht alle in einer Prozedur vereinbarst.
Desweiteren würde ich vorschlagen, das du dem Edit1 die OnKeyPress Methode zuweist und nicht der gesamten Form.
Die Prozedur Fenster_leeren würde ich ebenfalls unter private/public deklarieren.
z.B:
Delphi-Quellcode:
private
{ Private-Deklarationen }
procedure fenster_leeren (var n : integer);
Tschüß Markus