Julian von Mendel: Ereignisse mit unterschiedlichen Eintrittswahrscheinlichkeiten

Beitrag lesen

Hi,

a = rand(0,100)

das sind dann ja schon 101 Möglichkeiten...

if(a <= 22){
Ereigniss A
} elseif (a > 22 && a <= 25){

Das a > 22  ist nutzlos, wenn das nicht zutreffen würde hätte schließlich das if vorher gegriffen.

Ereigniss B

Wieso erzeugst du diese Abfragen nicht dynamisch in in einer Schleife?

  
    $moeglichkeiten = array("Ergebnis A" => 33, "Ergebnis B" => 44, "Ergebnis C" => 23);  
    $rand = rand(1, 100);  
    $offset = 0;  
    foreach($moeglichkeiten as $name => $moeglichkeit)  
    {  
        $offset += $moeglichkeit;  
        if ($rand > $offset) continue;  
        $found = $name;  
        break;  
    }  
    // Weiterverarbeitung  
    echo $found."\n";  

Schöne Grüße
Julian

--
ie:% fl:| br:^ va:| ls:< fo:| rl:( n4:° ss:) de:> js:| ch:{ sh:( mo:? zu:)