![]() |
Problem mit Zufalls zahlen!
Liste der Anhänge anzeigen (Anzahl: 1)
also in einer funktion wird ein zufälliges element aus einer TQueue ausgelesen.
doch irgentwir ist die zufalls zahl immer die selebe: (ICH RATE ZUM ZUSAMMENFALTEN!)
Code:
hier mal die funktion mit der ich die elemente zufällig auswähle:
Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3
Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:2 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:3 Tmaze.RandomTQueueItem: Zufälliges element:1 aus:4
Delphi-Quellcode:
es ist nicht IMMER 1. die funktion wird in einer for schleife mit ~ 10 anderen zeilen code aufgerufen, also sehr sehr häufig.
function Tmaze.RandomTQueueItem(Q:TQueue):Pointer; //Zufälliges Element aus der liste suchen
var i:integer; begin LogForm.APPEND('Tmaze.RandomTQueueItem: Hello',3); randomize; for i:=0 to random(Q.Count) do Q.Push(Q.Pop); LogForm.APPEND('Tmaze.RandomTQueueItem: Zufälliges element:'+inttostr(i)+' aus:'+inttostr(Q.Count),0); RandomTQueueItem:=Q.Pop; LogForm.APPEND('Tmaze.RandomTQueueItem: Goodbye',3); end; is sind immer "blöcke" an selben zaheln... all dies passiert in rahmen einer Labyrinth erstellungs prozedure, und zu schluss sieht das labyrinth dann nicht soo labyrinthig aus(siehe attachment) |
Re: Problem mit Zufalls zahlen!
Hast du auch irgendwo mal
![]() |
Re: Problem mit Zufalls zahlen!
Delphi-Quellcode:
Variable i ist nach der Schleife undeffiniert. (Delphi ist nicht halt C :))
for i:=0 to random(Q.Count) do
Q.Push(Q.Pop); LogForm.APPEND('Tmaze.RandomTQueueItem: Zufälliges element:'+inttostr(i)+' aus:'+inttostr(Q.Count),0); [EDIT] Und warscheinlich wegen Compiler - Optimierung läuft i von Random(Q.Count) DOWNTO 0 . |
Re: Problem mit Zufalls zahlen!
Zitat:
MfG Binärbaum |
Re: Problem mit Zufalls zahlen!
Liste der Anhänge anzeigen (Anzahl: 1)
also ich hab getz mal randomize; aus der funktion rausgenomen und rufe es nur ein mal auf (danke Luckie) und das get besser...
(siehe visueller bewiess) die optimierung hab ich auch mal durchführt.. dank! |
Re: Problem mit Zufalls zahlen!
Zitat:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i : Integer; begin for i := 0 to 9 do begin Listbox1.Items.Add(IntToStr(i)); end; ShowMessage(IntToStr(i)); end; Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz