Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Zufall wiederholt sich?? (https://www.delphipraxis.net/72104-zufall-wiederholt-sich.html)

daredd 25. Jun 2006 19:40


Zufall wiederholt sich??
 
:wall: Mal ne frage ich habe jetz endlich ein Programm das Zufallszahlen auswirft.

Nun habe ich das Problem das sich die Zufalls zahlen wiederholen,
vor allem wenn ich das programm aus mache und wider neu starte kommen
jedesmal beim ersten Zufallsrechnen die selben zahlen raus. (doch nicht alles so zufällig???)

Was kann ich da machen, wie mach ich es so das wirklich immer neue zahlen bzw. zahlen kombinationen rauskommen??

[edit=Jelly]Bei deinem Code handelt es sich nicht um .NET Code, daher hab ich mal das Ganze wieder unter Delphi Wind32 umgestellt. Mfg, Jelly[/edit]

Nikolas 25. Jun 2006 19:42

Re: Zufall wiederholt sich??
 
Hast du an randomize gedacht? Diesen Befehl, der den Startwert der Zufallsfunktion zufällig setzt und einmal zu Programmbeginn aufgerufen werden soll?

zebrafalke 25. Jun 2006 19:43

Re: Zufall wiederholt sich??
 
Wie der Zufall so spielt, kann es durchaus sein, das er oft beim Start des Progs die selbe Zahl angibt...ist mir auch schon passiert... :)

MisterNiceGuy 25. Jun 2006 19:45

Re: Zufall wiederholt sich??
 
...was allerdings die Ausnahme sein sollte wenn man beim Programmstart
Delphi-Quellcode:
randomize;
aufruft ;)

daredd 25. Jun 2006 19:46

Re: Zufall wiederholt sich??
 
Zitat:

Zitat von Toxman
Hast du an randomize gedacht? Diesen Befehl, der den Startwert der Zufallsfunktion zufällig setzt und einmal zu Programmbeginn aufgerufen werden soll?


Ja klar habe ich das gemach, aber dennoch ist bei jedem start der programms immer die selbe zahlen folge.
immer ich habe es jetzt schon 50 mal probiert,
die zahlen werden immer gleich berechnet

TheAn00bis 25. Jun 2006 19:47

Re: Zufall wiederholt sich??
 
Zitat:

Zitat von zebrafalke
Wie der Zufall so spielt, kann es durchaus sein, das er oft beim Start des Progs die selbe Zahl angibt...ist mir auch schon passiert... :)

Das wird aber nur bei kleinen Bereichen vorkommen.

Rufst du

Delphi-Quellcode:
Randomize;
auch nur einmal auf?


Ansonsten zeig doch mal etwas Code.

daredd 25. Jun 2006 19:55

Re: Zufall wiederholt sich??
 
Zitat:

Zitat von TheAn00bis
Zitat:

Zitat von zebrafalke
Wie der Zufall so spielt, kann es durchaus sein, das er oft beim Start des Progs die selbe Zahl angibt...ist mir auch schon passiert... :)

Das wird aber nur bei kleinen Bereichen vorkommen.

Rufst du

Delphi-Quellcode:
Randomize;
auch nur einmal auf?


Ansonsten zeig doch mal etwas Code.





So klappt das jetz ich habe 2 mal randomize benutzt!!!!
ein mal:
Delphi-Quellcode:
var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.CreateForm(Sender: TObject);
begin
  Randomize;
end;
......
und dann noch direkt in der Prozedur wo dann die zahlen notiert werden:

Delphi-Quellcode:
procedure TForm1.Zufall(Sender: TObject);
const
  nZ181  = 7;
  nz182  = 9;
  nz183  = 9;
  sZ181  = 7;
  sz182  = 9;
  sz183  = 9;
  nZ261  = 7;
  nz262  = 9;
  nz263  = 9;
  sZ261  = 7;
  sz262  = 9;
  sz263  = 9;
  nZ341  = 7;
  nz342  = 9;
  nz343  = 9;
  sZ341  = 7;
  sz342  = 9;
  sz343  = 9;
  nZ421  = 7;
  nz422  = 9;
  nz423  = 9;
  sZ421  = 7;
  sz422  = 9;
  sz423  = 9;
  nZ491  = 7;
  nz492  = 9;
  nz493  = 9;
  sZ491  = 7;
  sz492  = 9;
  sz493  = 9;
  nZ581  = 7;
  nz582  = 9;
  nz583  = 9;
  sZ581  = 7;
  sz582  = 9;
  sz583  = 9;
  nZ661  = 7;
  nz662  = 9;
  nz663  = 9;
  sZ661  = 7;
  sz662  = 9;
  sz663  = 9;
  nZ741  = 7;
  nz742  = 9;
  nz743  = 9;
  sZ741  = 7;
  sz742  = 9;
  sz743  = 9;
  nZ821  = 7;
  nz822  = 9;
  nz823  = 9;
  sZ821  = 7;
  sz822  = 9;
  sz823  = 9;
begin
Randomize;
NSpin18.Text:=IntToStr(Random(nz181))+','+IntToStr(Random(nz182))+IntToStr(Random(nz183));
SSpin18.Text:=IntToStr(Random(sz181))+','+IntToStr(Random(sz182))+IntToStr(Random(sz183));
NSpin26.Text:=IntToStr(Random(nz261))+','+IntToStr(Random(nz262))+IntToStr(Random(nz263));
SSpin26.Text:=IntToStr(Random(sz261))+','+IntToStr(Random(sz262))+IntToStr(Random(sz263));
NSpin34.Text:=IntToStr(Random(nz341))+','+IntToStr(Random(nz342))+IntToStr(Random(nz343));
SSpin34.Text:=IntToStr(Random(sz341))+','+IntToStr(Random(sz342))+IntToStr(Random(sz343));
NSpin42.Text:=IntToStr(Random(nz421))+','+IntToStr(Random(nz422))+IntToStr(Random(nz423));
SSpin42.Text:=IntToStr(Random(sz421))+','+IntToStr(Random(sz422))+IntToStr(Random(sz423));
NSpin49.Text:=IntToStr(Random(nz491))+','+IntToStr(Random(nz492))+IntToStr(Random(nz493));
SSpin49.Text:=IntToStr(Random(sz491))+','+IntToStr(Random(sz492))+IntToStr(Random(sz493));
NSpin58.Text:=IntToStr(Random(nz581))+','+IntToStr(Random(nz582))+IntToStr(Random(nz583));
SSpin58.Text:=IntToStr(Random(sz581))+','+IntToStr(Random(sz582))+IntToStr(Random(sz583));
NSpin66.Text:=IntToStr(Random(nz661))+','+IntToStr(Random(nz662))+IntToStr(Random(nz663));
SSpin66.Text:=IntToStr(Random(sz661))+','+IntToStr(Random(sz662))+IntToStr(Random(sz663));
NSpin74.Text:=IntToStr(Random(nz741))+','+IntToStr(Random(nz742))+IntToStr(Random(nz743));
SSpin74.Text:=IntToStr(Random(sz741))+','+IntToStr(Random(sz742))+IntToStr(Random(sz743));
NSpin82.Text:=IntToStr(Random(nz821))+','+IntToStr(Random(nz822))+IntToStr(Random(nz823));
SSpin82.Text:=IntToStr(Random(sz821))+','+IntToStr(Random(sz822))+IntToStr(Random(sz823));
end;
Das klappt jetz so!!

Mystic 25. Jun 2006 20:31

Re: Zufall wiederholt sich??
 
Randomize sollte nur ein einziges Mal beim Programmstart aufgerufen werden!

Cyberbob 25. Jun 2006 22:14

Re: Zufall wiederholt sich??
 
Er hat aber geschrieben, das es erst ging, nachdem er es ein zweites mal geschriebne hat.

simlei 25. Jun 2006 22:41

Re: Zufall wiederholt sich??
 
Es ist aber trotzdem Schwachsinn, es kann sogar das Ergebnis verfälschen...
Als ich das vergleichsweise in Basic (ja schlagt mich) geschrieben hab hab ich ne 40%-ige Häufung auf 5-en bei ner Würfelsim...


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:30 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz