Abend allerseits!
Zitat von
dino:
sun und ich haben entdeckt, dass die delphi zufallsfunktion etwas nicht zufälliges hat:
Da muß ich mich auch zu Wort melden.
Also um das etwas zu verdeutlichen, wir haben ein Random, das 3 Zustände ausgeben kann (0, 1, 2)...
Dann zählen wir in einer Schleife mit, welcher Zustand wie oft dran kommt.
Sobald alle Zustände gleich oft erzeugt wurden wird die Schleife abgebrochen.
Das Interessante dabei ist, das die Schleife entweder sofort wieder abgebrochen wird, weil alle Zustände nur nach wenigen Durchläufe gleich auf sind, oder es läuft zu ner Zahl, die ca. zwischen 1411655764 und 1431655764 liegt...
Nur einmal kam ein EIntOverflow
, das war wohl nur zufällig
Und so kommt die Frage auf, wie kommt das zustande?
Grüßle!
PS: Zum ansehen das ganze als Quelltext:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i0, i1, i2:integer;
begin
Randomize;
i0:=0;
i1:=0;
i2:=0;
Repeat
Case Random(3) of
0: Inc(i0);
1: Inc(i1);
2: Inc(i2);
end;
until (i0=i1) and (i0=i2) and (i1=i2);
Beep;
Edit1.text:=IntToStr(i0)+' - '+IntToStr(i1)+' - '+IntToStr(i2);
end;