MudGuard: Problem mit 2 verschachtelten Schleifen

Beitrag lesen

Hi,

for ($i=0; $i < $durchlauf; $i++)
{
  srand ((double)microtime()*1000000);

Warum willst Du das 150 Mal machen?
Einmal (vor der Schleife) reicht.
Dadurch kann es passieren, daß Du immer wieder die gleiche "Zufallszahl" bekommst.

$anzahl = rand(1,10);
  for ($j=0; $j < $anzahl; $j++)
  {
   srand ((double)microtime()*1000000);

ist hier genauso überflüssig.

$icon = rand(1,32);
   $icons[$j] = $icon;
  }
}
$icons = array_unique ($icons);

siehe oben, wenn Du immer wieder die selbe Zufallszahl bekommst, schmeißt Du hier alle Duplikate weg ==> ein einziger Eintrag.

natsort ($icons);
print_r($icons);
?>

Das Script soll mir 150 Arrays ausgeben wo die Anzahl der Elemente durch Zufall bestimmt und zwischen 1-10 liegen soll. Die Elemente sollen wiederum aus Zufallszahlen bestehen welche Werte von 1-32 annehmen sollen.
Mein Problem liegt jetzt einfach darin das die ganze schleife nur einmal durchlaufen wird

Woraus schließt Du das? Weil Du die Duplikate wegschmeißt?

cu,
Andreas

--
Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/