/** * Class that models an American-style roulette wheel (with numbers 1-36, 0, and 00). * * @author Dave Reed * @version 11/04/09 */ public class RouletteWheel { private Die roller; // used for generating the random spin /** * Constructor for objects of class RouletteWheel */ public RouletteWheel() { this.roller = new Die(38); } /** * Simulates a single spin of the roulette wheel. * @return the number obtained by the spin * (Note: both wheel slots 0 and 00 are returned as 0.) */ public int spin() { int number = this.roller.roll(); if (number > 36) { return 0; } else { return number; } } /** * Determines the color for a particular number on the wheel. * @param number the number on the wheel * @return that number's color (either "red", "black", or "green") */ public String getColor(int number) { if (number == 0) { return "green"; } else if (number == 1 || number == 3 || number == 5 || number == 7 || number == 9 || number == 12 || number == 14 || number == 16 || number == 18 || number == 19 || number == 21 || number == 23 || number == 25 || number == 27 || number == 30 || number == 32 || number == 34 || number == 36) { return "red"; } else { return "black"; } } /** * Reports the number of times the wheel has been spun. * @return the number of spins so far */ public int getNumberOfSpins() { return this.roller.getNumberOfRolls(); } }