Online
Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
Delphi 12 Athens
|
Re: zu blöd für MinSort...
3. Dez 2003, 20:13
Ein Hallöle von http://www.FrankNStein.de/Smiley-Wolke.gif,
hatte die Zählervariable nicht mit geändert:
Code:
[b]Procedure[/b] TForm1.Button1Click(Sender: TObject);
[b]Var[/b] i: Integer;
[b]Begin[/b]
Randomize;
ListBox1.Clear;
anz := 5;
[b]For[/b] i := 1 [b]to[/b] anz [b]do[/b] [b]Begin[/b]
a[[color=red]anz[/color]] := Round(Random * 1000) / 100;
ListBox1.Items.Add(FloatToStr(a[[color=red]anz[/color]]));
[b]End[/b];
[b]End[/b];
Der Fehler lag also nicht beim Sortieren, sondern beim Füllen des Arrays. Da wurde eben nur a[ anz] / a[ 5] gefüllt.
So, jetzt geht es:
Delphi-Quellcode:
Procedure TForm1.Button1Click(Sender: TObject);
Var i: Integer;
Begin
Randomize;
ListBox1.Clear;
anz := 5;
For i := 1 to anz do Begin
a[i] := Round(Random * 1000) / 100;
ListBox1.Items.Add(FloatToStr(a[i]));
End;
End;
Procedure TForm1.Button2Click(Sender: TObject);
Var i, j: integer;
hilf: real;
Begin
For i := 1 to anz - 1 do
For j := i + 1 to anz do
If a[j] < a[i] Then Begin
hilf := a[j];
a[j] := a[i];
a[i] := hilf;
End;
ListBox1.Clear;
For i := 1 to anz do
ListBox1.Items.Add(FloatToStr(a[i]));
End;
http://www.FrankNStein.de/Smiley-Kuss.gif * * http://www.FrankNStein.de/Smiley-Spinne.gif * * * http://www.FrankNStein.de/Smiley-Winken.gif
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
|