Hallo Community,
ich hab ein kleines Programm geschrieben, das mir für das Brettspiel Risiko die Wahrscheinlichkeit berechnen soll, mit der der obere der Beiden Würfel vom Verteidiger gewonnen wird( Nach Erfolg will ich das Programm natürlich erweiteren. Dabei erreicht meine Wahrscheinlichkeit immer den Zahlenwert NaN. Woran kann das liegen?
Ich hab mal den Code hier reingepackt:
float siegVerteidiger = 0;
float siegAngreifer = 0;
float unentschieden = 0;
int i = 1;
//Berechnung Verteidiger
while (i<7) {
float z = i / 6;
float w = 1 / 6;
float x = 1 - z;
siegVerteidiger = siegVerteidiger + ((w+x*w+x*x*w)*(z+x/z));
i++;
if (i==6) {
System.out.println("Verteidiger gewinnt zu " + siegVerteidiger + "%");
}
}
Die Ausgabe ist immer: Verteidiger gewinnt zu NaN%
Es gibt keine Fehlermeldung.
Vermutlich habe ich nur einen Denkfehler irgendwo, aber ich kann ihn nicht finden
Vielen Dank im Vorraus
ich hab ein kleines Programm geschrieben, das mir für das Brettspiel Risiko die Wahrscheinlichkeit berechnen soll, mit der der obere der Beiden Würfel vom Verteidiger gewonnen wird( Nach Erfolg will ich das Programm natürlich erweiteren. Dabei erreicht meine Wahrscheinlichkeit immer den Zahlenwert NaN. Woran kann das liegen?
Ich hab mal den Code hier reingepackt:
float siegVerteidiger = 0;
float siegAngreifer = 0;
float unentschieden = 0;
int i = 1;
//Berechnung Verteidiger
while (i<7) {
float z = i / 6;
float w = 1 / 6;
float x = 1 - z;
siegVerteidiger = siegVerteidiger + ((w+x*w+x*x*w)*(z+x/z));
i++;
if (i==6) {
System.out.println("Verteidiger gewinnt zu " + siegVerteidiger + "%");
}
}
Die Ausgabe ist immer: Verteidiger gewinnt zu NaN%
Es gibt keine Fehlermeldung.
Vermutlich habe ich nur einen Denkfehler irgendwo, aber ich kann ihn nicht finden
Vielen Dank im Vorraus