Schaut man mal über Google, wie der Sortieralgorithmus funktioniert bekommt man sogar bei Wikipedia den fertigen Pascal-Code
Delphi-Quellcode:
{ MinSort, als eine Variante von SelectionSort }
{ Uebergabe: Zu sortierendes Array, das an den Stellen 1 bis n mit natuerlichen Zahlen belegt ist }
Procedure MinSort(Var Feld: Array Of LongInt);
Var
i, j : LongInt; { Zaehlvariablen }
Temp, Min: LongInt; { Zwischenspeicher, Minimum }
Begin
For i := 0 To High(Feld) Do Begin
Min := i;
For j := i + 1 To High(Feld) Do
If Feld[j] < Feld[Min] Then Min := j;
Temp := Feld[Min];
Feld[Min] := Feld[i];
Feld[i] := Temp;
End;
End; { Procedure MinSort }
Hab ihn nicht getestet, dürfte aber korrekt sein.
Wenn zum Beispiel in Edit1 die Länge des Arrays (Anzahl dessen Felder) eingegben werden soll, dann geht das wie folgt:
iArray = array of integer;
und im Quelltext:
Delphi-Quellcode:
if TryStrToInt(Edit1.Text, x) then begin
setlength(iArray, x);
for i := 0 to x do iArray[i] := Random(100)
else
ShowMesage('Fehlerhafte Eingabe. +'Edit1.Text'+ entspricht keinem Integer!');
end;
Vergiss nicht in der FormCreate Randomize; aufzurufen um den Zufallsgenerator zu initialisieren.
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.