Schrift
[thread]6816[/thread]

Zufallszahl: Zufallszahl

Leser: 1


<< |< 1 2 >| >> 12 Einträge, 2 Seiten
machina
 2005-03-24 17:27
#52949 #52949
User since
2005-03-24
2 Artikel
BenutzerIn
[default_avatar]
kann mir vielleicht jemand sagen, mit welchem Befehl man einer Variable eine Zufallszahl zuweisen kann?
Danke
mordur
 2005-03-24 17:35
#52950 #52950
User since
2003-09-25
182 Artikel
BenutzerIn
[Homepage] [default_avatar]
Code: (dl )
1
2
$wert=1000;
$zahl=rand($wert);

Gibt $zahl eine Zufallszahl zwischen 0 und 1000;

perldoc -f rand (es gibt, glaub ich, noch srand)\n\n

<!--EDIT|mordur|1111678568-->
esskar
 2005-03-24 17:35
#52951 #52951
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
Code: (dl )
my $zufall = int(rand(100));


perldoc -f rand
machina
 2005-03-24 17:41
#52952 #52952
User since
2005-03-24
2 Artikel
BenutzerIn
[default_avatar]
DANKE!!!
lichtkind
 2005-03-25 14:10
#52953 #52953
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
srand würd ich nur nehemen wenn es wirklich zufallszahlen sein sollen.
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
Strat
 2005-03-25 14:25
#52954 #52954
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=lichtkind,25.03.2005, 13:10]srand würd ich nur nehemen wenn es wirklich zufallszahlen sein sollen.[/quote]
Quote
aus: perldoc -f srand
If srand() is not called explicitly, it is called implicitly at
the first use of the "rand" operator. However, this was not the
case in versions of Perl before 5.004, so if your script will
run under older Perl versions, it should call "srand".
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
sesth
 2005-03-25 20:57
#52955 #52955
User since
2005-02-01
181 Artikel
BenutzerIn
[default_avatar]
Wirkliche Zufallszahlen gibt es m.E. auf dem Rechner normalerweise nicht. Deshalb heißen die Dinger auch Pseudozufallszahlen.

Das Zitat von Strat aus dem Manual könnte man leicht missinterpretieren. srand initialisiert den Pseudozufallszahlengenerator und ist kein Ersatz für rand. Deshalb sollte in den alten Perl-Versionen srand einmal zu Beginn aufgerufen werden aber keinesfalls an Stelle von rand.

Gruß
Thomas
Gruß
Thomas
esskar
 2005-03-25 21:57
#52956 #52956
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=sesth,25.03.2005, 19:57]Wirkliche Zufallszahlen gibt es m.E. auf dem Rechner normalerweise nicht. Deshalb heißen die Dinger auch Pseudozufallszahlen.[/quote]
Naja, eine n-te Zufallszahl ist ja eine Zahl, die man auch dann nicht erraten oder bestimmen kann, wenn man die anderen n-1 Zufallszahlen davor schon gesehen hat.
Im Fall von rand kann ich dir da Zustimmen.
Ich finde aber, wenn man verschiedene Dinge mit in die Rechnung nimmt (CPU Power/Auslastung, Speicherverbrauch (aktueller Heap und so en zeugs), aktuelles Laufwerk, aktives Fenster, Zeit (und zwar highperformance counter oder so), Netzwerktraffic, ...., und, und, und), und diese Daten gut mit einander Mixed um eine gute Verteilung zu erhalten (z.B. mit einer Hash-Funktion ala RipeMD160) kommt man schon an gute Ergebnisse ran!
sesth
 2005-03-26 19:52
#52957 #52957
User since
2005-02-01
181 Artikel
BenutzerIn
[default_avatar]
Die Frage ist doch was ein "gutes" Ergebnis ist. Bei Zufallszahlen sollte die Gleichverteilung stimmen, die Periodizität möglichst hoch sein, keine Abhängigkeiten (auch in höheren Dimensionen) zwischen den Zahlen bestehen usw. Das wird nicht mit einem zufälligen Algorithmus, erreicht sondern mit einem mathematisch abgesicherten Verfahren, das Zufallszahlen erzeugt. Wenn Du nur eine Zufallszahl benötigtst, kann Dir das alles egal sein - falls Du aber eine Simulation mit mehreren Millionen Zufallszahlen betreibst und Dein Generatur liefert Mist, kannst Du Dein Simulationsergebnis vergessen.

srand bestimmt den Startwert. Danach sollte rand für qualitativ gute Zufallszahlen sorgen. Wird durch Zwischenaufrufe von srand die Zufallsfolge unterbrochen, können die oben genannten Kriterien u.U. nicht erfüllt werden.
Gruß
Thomas
esskar
 2005-03-26 20:44
#52958 #52958
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=sesth,26.03.2005, 18:52]Die Frage ist doch was ein "gutes" Ergebnis ist. Bei Zufallszahlen sollte die Gleichverteilung stimmen[/quote]
hab ich ja gesagt...
<< |< 1 2 >| >> 12 Einträge, 2 Seiten



View all threads created 2005-03-24 17:27.