Einzelnen Beitrag anzeigen

Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#3

Re: Globale Variable wird geändert einfach so

  Alt 12. Dez 2004, 20:24
Zitat von fiasko:
schon mal probiert das ganze im Einzelschritt durchzugehen und immer geschaut (->Überwachte Ausdrücke) wo sich "anzahl" ändert? Im bubblesort kann es ja schlecht sein wenn nicht grad schwarze Magie im Spiel ist ...
Ich habs versucht. Da muss irgendwo schwarze (Compiler-)Magie dahinter sein
Möglicherweise funktionierts mit jeweils einer Hilfsvariable für die beiden Schleifen.

Delphi-Quellcode:
procedure bubblesort();
var i, j, tmp, AnzAussen, AnzInnen: integer;
begin
  AnzAussen := anzahl;
  AnzInnen := anzahl;

  for i := 1 to (AnzAussen - 1) do begin
    for j := AnzInnen downto 1 do begin
      if werte[j - 1] < werte[j] then begin
        tmp := werte[j - 1];
        werte[j - 1] := werte[j];
        werte[j] := tmp;
      end;
    end;
  end;
end;
Habs aber nicht ausprobiert. Ist jetzt nur mal ne Vermutung.

grüße, daniel
Daniel
Testen ist feige!
  Mit Zitat antworten Zitat