From 9acea903216dbe371dd7b41cbf23b46a5732bcb4 Mon Sep 17 00:00:00 2001 From: Stefan Suhren Date: Sun, 7 Dec 2014 19:15:58 +0100 Subject: Refactored the packagenames fo better sorting --- .../in/inf/java1/aufgabe07/ZufallsSpieler.java | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 src/de/fhswf/in/inf/java1/aufgabe07/ZufallsSpieler.java (limited to 'src/de/fhswf/in/inf/java1/aufgabe07/ZufallsSpieler.java') diff --git a/src/de/fhswf/in/inf/java1/aufgabe07/ZufallsSpieler.java b/src/de/fhswf/in/inf/java1/aufgabe07/ZufallsSpieler.java new file mode 100644 index 0000000..29a8aba --- /dev/null +++ b/src/de/fhswf/in/inf/java1/aufgabe07/ZufallsSpieler.java @@ -0,0 +1,52 @@ +/** + * + */ +package de.fhswf.in.inf.java1.aufgabe07; + +/** + * A player that switches strategy with a certain probability. + * + * @author $Author: $ + * @version $Revision: $, $Date: $ UTC + */ +public class ZufallsSpieler extends WechselSpieler +{ + + private double wahrscheinlichkeit = 0; + + /** + * Initializes a player which switches strategies. + * + * @param wahrscheinlichkeit + * Probability of switching strategy. + */ + public ZufallsSpieler(double wahrscheinlichkeit) + { + if (wahrscheinlichkeit < 0.0 | wahrscheinlichkeit > 1.0) + { + throw new IllegalArgumentException( + "Only a probability between 0 and 100 is allowed."); + } + + this.wahrscheinlichkeit = wahrscheinlichkeit; + } + + /* + * (non-Javadoc) + * + * @see de.fhswf.in.inf.java1.aufgabe07.WechselSpieler#zweiterTipp(int) + */ + @Override + public final int zweiterTipp(int leeresHuetchen) + { + if (Spiel.RAND.nextDouble() < wahrscheinlichkeit) + { + return getErsterTipp(); + } + else + { + return super.zweiterTipp(leeresHuetchen); + } + } + +} -- cgit v1.2.3-70-g09d2