Wahrscheinlichkeit in JavaScript-Hilfe?

7

Tut mir leid, ich bin neu bei JS und kann das nicht herausfinden: Wie würde ich Wahrscheinlichkeit machen?

Ich habe absolut keine Ahnung, aber ich möchte etwas tun: aus 100% Chance, vielleicht 0,7% Chance, die Funktion e(); auszuführen und 30% Chance, die Funktion d(); auszuführen usw. - sie werden es tun addiere bis zu 100% genau mit jeweils einer anderen Funktion, aber ich habe nicht genau herausgefunden, wie man das in irgendeiner Form macht.

Was ich gefunden habe, ist meist seltsame High School Mathe Tutorials "powered by" Javascriptkit oder etwas.

    
jen 21.10.2010, 01:36
quelle

6 Antworten

15

Zum Beispiel definieren wir eine Reihe von Funktionen

%Vor%

Diese generische Funktion funktioniert für eine beliebige Anzahl von Funktionen, sie führt sie aus und gibt das Ergebnis zurück:

%Vor%

Zum Beispiel versuchen wir es mit unseren 3 Funktionen, 100000 Versuchen:

%Vor%

Das Ergebnis in meinem Firefox

%Vor%

So a etwa 20%, b ~ 70% und c ~ 10%.


Bearbeiten folgende Kommentare.

Wenn Ihr Browser ein Husten mit return (funcs[i])(); hat, ersetzen Sie einfach das funcs-Array

%Vor%

mit diesem neuen (Strings)

%Vor%

Ersetzen Sie dann die letzte Zeile der Funktion randexec()

%Vor%

mit dem neuen

%Vor%     
Ring Ø 21.10.2010, 02:18
quelle
4

So etwas sollte helfen:

%Vor%

Dies führt func1() mit 30,5% Wahrscheinlichkeit, func2() mit 40% und func3() mit 29,5% aus.

Sie könnten es wahrscheinlich eleganter mit einem Wörterbuch von Schwellen machen, um Zeiger zu funktionieren, und eine Schleife, die den ersten Wörterbucheintrag mit einem Schwellenwert findet, der größer ist als randomNumber .

    
Andrew Cooper 21.10.2010 01:56
quelle
1

Klingt nach dem, was Sie wirklich wollen, ist die Javascript random () -Funktion .

    
Robert Massaioli 21.10.2010 01:43
quelle
1

Sehen Sie nach, wie Sie in JavaScript Zufallszahlen erhalten, und rufen Sie dann, je nachdem, wo diese Zahl fällt, jede Funktion auf.

    
philfreo 21.10.2010 01:44
quelle
1
%Vor%

Codeblock zur Verwendung des oben genannten

%Vor%

Vereinfachen Sie den Aufruf von Code mit einem wiederverwendbaren Objekt

%Vor%     
Phil H 23.04.2012 12:59
quelle
0
%Vor%     
Troy 21.04.2012 20:36
quelle

Tags und Links