Hallo!
@Silent: zum n+78631. Male: Das Randomize gehört nicht in die Zufalls-Ermittlungsprozedur, sondern wird nur
einmal, z.B. im FormCreate, aufgerufen. Sonst gibt das merkwürdige Effekte!
Hintergrund: durch Randomize wird der Pseudo-Zufallsgenerator mit der Uhrzeit initialisiert. Bei gleicher Uhrzeit und gleichem Intervall liefert Random auch den gleichen "Zufalls"-Wert!
Deshalb hat man bei
Delphi-Quellcode:
var
feld:Array [ 1 .. 10 ] of Integer;
lauf:Integer
...
for lauf := 1 to 10 do
begin
Randomize;
feld[lauf]:=Random(50);
end;
zu fast 100% alle Array-Elemente auf demselben Wert oder erhält in den ersten Elementen einen Wert und danach im Rest den nächsten, weil der Zeitwechsel dazwischen lag (ich weiß jetzt nicht, wie genau Delphi die Uhrzeit benutzt).
Nebenbei ist es natürlich Quatsch, solange zu würfeln, bis das Ergebnis paßt. Da haben wir bei der berühmten "Ziehung der Lottozahlen" ja schon ausreichend Erfahrung mit doppelten Zahlen und ihrer Vermeidung.
Gruß
Dietmar Brüggendiek