Einzelnen Beitrag anzeigen

Markus K.

Registriert seit: 26. Jan 2004
Ort: Halle
346 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Probleme mit Mergesort

  Alt 23. Mär 2004, 13:25
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
  Mit Zitat antworten Zitat