ich möchte die Zahlen von 1-26 (jede einmal) in zufälliger reihenfolge in ein array speichern und habe dafür eine repeat until schleife geschrieben:
repeat
rnd:=random(25)+1;//zufallszahlerzeugen
if (pos(IntToStr(rnd),s)=0) // fügt zufallszahl dem array hinzu, falls diese zufallszahl bis jetzt noch nicht verwendet wurde
then begin
a[counter]:=rnd;
writeln(counter,': ',rnd);
s:=s+IntToStr(rnd)+' '; // zufallszahl in einem string abspeichern, damit sie nicht nochmal ins array geschrieben wird
counter:=counter+1; // wenn neue zufallszahl dem array hinzugefügt wurde, wird der zähler erhöht
end
until (counter=26);
allerdings schafft es die schleife nicht bis über 17-21 zufallszahlen. woran kann das liegen? oder dauert es nur unheimlich lange, bis die restlichen, noch nicht eingefügten zufallszahlen berechnet wurden?
vielen dank für die antwort! ich glaube, ich suche lieber im string nach "<leerzeichen>zahl" statt nach "zahl"!