blob: 29a8aba9bfdb53919ed9762dc67b582577ed70b6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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);
}
}
}
|