Na? Welchen Wert hat maxi nun?
Ach!!
So hat maxi ja den Wert 100...8Wenn man im Editfeld 100 eingibt)
Das Programm generiert ja zunächst eine Liste aus zufälligen Zahlen aus der Menge Anzahl.
Somit muss ich doch "High(Werte[i])" nehmen, da das gerade die Werte sind, die unsortiert sind. Davon die größte Zahl.
An der Fehlermeldung hat dies aber nichts weiter geändert...
Kommt man da vielleicht in Widerspruch mit irgendwas oder habe ich irgendwo einen nicht existierenden Wert generiert?
Hier nochmal der Quellcode:
Code:
const
max = 1000000;
var
Form1: TForm1;
Werte: Array[1..max] of Integer;
Anzahl,Zahl: integer;
[...]
procedure TForm1.SelectionSort;
var i,k,maxi,j,wert:integer;
begin
maxi := high(Werte[i]);
for i := 0 to maxi - 1 do
begin
wert := werte[i];
k := i;
for j := i + 1 to maxi do if werte[j] < wert then
begin
wert := werte[j];
k := j;
end;
werte[k] := werte[i];
werte[i] := wert;
end;
end;
Danke für die Hilfe... autsch...
Gruß,
thechus