Gewinnchance PHP Prozentberechnung

7

Ich habe ein "Kampfsystem", der Angreifer hat eine Kampfstärke von z. 100 hat der Verteidiger eine Stärke von z.B. 75.

Aber ich sitze jetzt fest, ich kann nicht herausfinden, wie ich den Gewinner finden kann. Ich weiß, dass der Angreifer eine Chance von 25% hat zu verlieren, aber ich kann das Skript nicht verstehen.

Irgendwelche Ideen?

    
Sims 07.01.2015, 15:57
quelle

4 Antworten

15

Extrahiere eine Zufallszahl zwischen 0...100 , oder wenn du 0...1 bevorzugst.
Dann überprüfe, ob diese Zahl niedriger als 75 ist. Wenn dies der Fall ist, hat der Angreifer gewonnen.

%Vor%

Dies hat eine sehr direkte wahrscheinlichkeitstheoretische Interpretation. Wenn Sie zufällig eine Zahl zwischen 0...100 extrahieren, haben Sie eine Wahrscheinlichkeit von 75%, dass die Zahl niedriger als 75 ist. Genau das, was Sie brauchen.

In diesem Fall brauchen Sie nur rand() function. Beachten Sie auch, was @ Marek vorgeschlagen hat, die Gewinnchance für den Angreifer kann viel niedriger als 75% sein. (Lesen Sie die Antwort von Marek, die auf eine Gewinnchance von 57% hinweist).

Das Problem tritt auf, wenn Sie komplexere Wahrscheinlichkeitsdichtefunktionen modellieren müssen, zum Beispiel:

In diesem Fall benötigen Sie ein komplexeres Modell wie zB eine gaußsche Mischung .

    
dynamic 07.01.2015 16:00
quelle
3

Wenn ich das als nutzbare Funktion in Code einfügen würde:

%Vor%

Gibt bei Bedarf einfach wahr oder falsch zurück. Übergeben Sie die Werte, die Sie benötigen.

    
John Reid 07.01.2015 16:05
quelle
3

Die Gewinnchance von Spieler A gegen B ist A / (A + B), dies gilt für jede Zahl und jeden Maßstab. Dann verwenden Sie die Antwort von dynamic, um das tatsächliche Ergebnis zu berechnen.

Für Ihr Beispiel:

%Vor%     
Marek 07.01.2015 16:03
quelle
1

Mit einem Zufallszahlengenerator können Sie eine Funktion wie zum Beispiel:

erstellen %Vor%

Dann können Sie die Funktion überall verwenden. Hinweis: mt_rand erzeugt vermutlich bessere Zufallszahlen.

    
Half Crazed 07.01.2015 16:02
quelle

Tags und Links