TomH30: Variable stattt mit Zufall nach Gewichtung füllen

Guten Morgen!

Bislang hatte ich mit der Random Methode eine variable nach dem zufallsprimzip gefüllt.Fabei hatte ich zwei Optionen und mehr oder minder abwechselnd wurden diese in eine Variable geladen. Das sah dann so aus:

// Zufdllige Textausgabe
$purl = array(
"text1()",
"text2()"
//
);
$zufall = mt_rand(0,count($purl)-1);

Nun möchte ich dass man eine Gewichtung wählen kann. Also z.B 30% Text1 und 70% Text zwei.

wie kann ich das anstellen?

Grüße, Thomas

  1. Hi,

    Nun möchte ich dass man eine Gewichtung wählen kann. Also z.B 30% Text1 und 70% Text zwei.
    wie kann ich das anstellen?

    Hm - Nachdenken?

    Waehle einen entsprechend grossen Bereich fuer die Zufallszahl - und wenn sie im einen Bereich liegt, dann Moeglichkeit #1, andernfalls Moeglichkeit #2.

    Zufallszahl von 1 bis 100 - wenn <= 30, dann #1, sonst #2.
    (Wobei du hier dann auch gerne auf 1 bis 10 und <= 3 "kuerzen" kannst, denn Zufallszahlen werden ja nicht "besser", nur weil man den Bereich groesser waehlt.)

    MfG ChrisB

  2. @@TomH30:

    Nun möchte ich dass man eine Gewichtung wählen kann. Also z.B 30% Text1 und 70% Text zwei.

    Indem du nicht als Zufallszahl 0 oder 1 erzeugst; sondern 0, 1, 2, …, 9. Ist deine erzeugte Zufallszahl kleiner als 3, wähle Text1; sonst Text2.

    Bei anderen gewünschten Wahrscheinlichkeitsverhältnissen den Bereich der Zufallszahlen und die Grenze entsprechend ändern.

    Live long and prosper,
    Gunnar

    --
    „Das Internet ist ein großer Misthaufen, in dem man allerdings auch kleine Schätze und Perlen finden kann.“ (Joseph Weizenbaum)
    1. Hi Gunnar,

      abschreiben tut man nicht tun ... ts ts ts

      Gruss Roland