Roller.java
1    package chanceapps;
2    
3    import chance.Die;
4    public class Roller {
5        public static void main(String[] args) {
6            createAndRollStandardDieFiveTimes();
7            createAndRollTwentySidedDieFiveTimes();
8            createAndRollStandardDie(20);
9            createAndRollStandardDie(30);
10           createAndRollNineSidedDie(20);
11           createAndRollNineSidedDie(30);
12           System.out.println("Ten times, roll a standard die for a 1.");
13           for (int i = 1; i <= 10; i++) {
14               createAndRollStandardDieFor1();
15           }
16           System.out.println("Ten times, roll a twelve sided die for a 1.");
17           for (int i = 1; i <= 10; i++) {
18               createAndRollTwelveSidedDieFor1();
19           }
20       }
21       private static void createAndRollStandardDieFiveTimes() {
22           System.out.println("Roll a standard die 5 times ...");
23           Die die = new Die();
24           die.roll(); System.out.print(die.top() + " ");
25           die.roll(); System.out.print(die.top() + " ");
26           die.roll(); System.out.print(die.top() + " ");
27           die.roll(); System.out.print(die.top() + " ");
28           die.roll(); System.out.print(die.top() + " ");
29           System.out.println();
30       }
31       private static void createAndRollTwentySidedDieFiveTimes() {
32           System.out.println("Roll a twenty-sided die 5 times ...");
33           Die twentySidedDie = new Die(20);
34           twentySidedDie.roll(); System.out.print(twentySidedDie.top() + " ");
35           twentySidedDie.roll(); System.out.print(twentySidedDie.top() + " ");
36           twentySidedDie.roll(); System.out.print(twentySidedDie.top() + " ");
37           twentySidedDie.roll(); System.out.print(twentySidedDie.top() + " ");
38           twentySidedDie.roll(); System.out.print(twentySidedDie.top() + " ");
39           System.out.println();
40       }
41       private static void createAndRollStandardDie(int nrOfTimes) {
42           System.out.println("Roll a standard die " + nrOfTimes + " times ...");
43           Die lucky = new Die();
44           int i = 1;
45           while (i <= nrOfTimes) {
46               lucky.roll();
47               System.out.print(lucky.top() + " ");
48               i = i + 1;
49           }
50           System.out.println();
51       }
52       private static void createAndRollNineSidedDie(int nrOfTimes) {
53           System.out.println("Roll a nine-sided die " + nrOfTimes + " times ...");
54           Die lucky = new Die(9);
55           int i = 1;
56           while (i <= nrOfTimes) {
57               lucky.roll();
58               System.out.print(lucky.top() + " ");
59               i = i + 1;
60           }
61           System.out.println();
62       }
63   
64       private static void createAndRollStandardDieFor1() {
65           Die lucky = new Die();
66           lucky.roll();
67           System.out.print(lucky.top() + " ");
68           while (lucky.top() != 1) {
69               lucky.roll();
70               System.out.print(lucky.top() + " ");
71           }
72           System.out.println();
73       }
74       private static void createAndRollTwelveSidedDieFor1() {
75           Die lucky = new Die(12);
76           lucky.roll();
77           System.out.print(lucky.top() + " ");
78           while (lucky.top() != 1) {
79               lucky.roll();
80               System.out.print(lucky.top() + " ");
81           }
82           System.out.println();
83       }
84   }