Thread Bester Weg um zufälligen Arrayindex zu erhalten.
(14 answers)
Opened by ariser at 2014-04-14 15:56
Es scheint als sei ein normaler Arrayzugriff $foo[$bar] äquivalent zu $foo[int($bar)], der Index wird also immer abgerundet.
Da rand irgendeine reelle Zahl kleiner als sein Argument und größer gleich Null liefert, sollte int(rand(@foo)) einen zufälligen, ganzzahligen Arrayindex für @foo liefern. Wie fair gleichverteilt diese Indices sind steht in den Sternen, weil rand irgendeinen von der verwendeten C-Standardbibliothek abhängigen Zufallsgenerator benutzt. Kryptographisch hochwertige Ergebnisse, die auch bei ein paar Millionen generierten Indices noch schön gleichverteilt sind, sollte man nicht erwarten! When C++ is your hammer, every problem looks like your thumb.
|