Hallo,
ich habe hier ein Problem, welches ich jetzt mal versuche zu beschreiben:
Ich habe einen Wert, z.B. 20. Diesen möchten ich in verschiedene Container, welche einen maximalen Wert erreichen können, verteilen.
Ich habe das einmal so gelöst:
Leider führt dies zu einer Endlos-Schleife. Was habe ich falsch gemacht? Ich finde hier wirklich keinen Fehler ...
Danke euch!
Info: Zeit[] ist der maximal-Wert eines jeden Containers.
ich habe hier ein Problem, welches ich jetzt mal versuche zu beschreiben:
Ich habe einen Wert, z.B. 20. Diesen möchten ich in verschiedene Container, welche einen maximalen Wert erreichen können, verteilen.
Ich habe das einmal so gelöst:
PHP-Code:
while($wert > $verteilter_wert)
{
$wert_ueber = $wert - $verteilter_wert;
$wert_zu_verteilen = rand(1,$wert_ueber);
$container_auswahl = rand(1,13);
if($wert_zu_verteilen < $Zeit[$container_auswahl])
{
$Container[$container_auswahl] = $Container[$container_auswahl] + $wert_zu_verteilen;
}
else
{
$wert_zu_verteilen = $Zeit[$container_auswahl] - $Container[$container_auswahl];
$Container[$container_auswahl] = $Container[$container_auswahl] + $wert_zu_verteilen;
}
$verteilter_wert = $verteilter_wert + $wert_zu_verteilen;
}
Danke euch!
Info: Zeit[] ist der maximal-Wert eines jeden Containers.
Kommentar