Roller.java
1    /* 
2     * Program to make use of the Die class. 
3     */
4    
5    package chanceapps;
6    
7    import chance.Die;
8    
9    public class Roller {
10   
11       public static void main(String[] args) {
12           // CREATE A STANDARD DIE AND ROLL IT 5 TIMES
13           createAndRollStandardDieFiveTimes();
14           // CREATE A TWENTY SIDED DIE AND ROLL IT 5 TIMES
15           createAndRollTwentySidedDieFiveTimes();
16           // CREATE A STANDARD DIE AND ROLL IT 20 TIMES
17           createAndRollStandardDie(20);
18           // CREATE A STANDARD DIE AND ROLL IT 30 TIMES
19           createAndRollStandardDie(30);
20           // CREATE A NINE SIDED DIE AND ROLL IT 20 TIMES
21           createAndRollNineSidedDie(20);
22           // CREATE A NINE SIDED DIE AND ROLL IT 30 TIMES
23           createAndRollNineSidedDie(30);
24           // TEN TIMES, CREATE A STANDARD DIE AND ROLL IT UNTIL YOU A 1
25           System.out.println("Ten times, roll a standard die for a 1.");
26           for (int i = 1; i <= 10; i++) {
27               createAndRollStandardDieFor1();
28           }
29           // TEN TIMES, CREATE A TWELVE SIDED DIE AND ROLL IT UNTIL YOU GET A 1
30           System.out.println("Ten times, roll a twelve sided die for a 1.");
31           for (int i = 1; i <= 10; i++) {
32               createAndRollTwelveSidedDieFor1();
33           }
34       }
35   
36       private static void createAndRollStandardDieFiveTimes() {
37           System.out.println("Roll a standard die 5 times ...");
38           Die die = new Die();
39           die.roll(); System.out.print(die.top() + " ");
40           die.roll(); System.out.print(die.top() + " ");
41           die.roll(); System.out.print(die.top() + " ");
42           die.roll(); System.out.print(die.top() + " ");
43           die.roll(); System.out.print(die.top() + " ");
44           System.out.println("");
45       }
46       private static void createAndRollTwentySidedDieFiveTimes() {
47           System.out.println("Roll a 20 sided die 5 times ...");
48           Die die = new Die(20);
49           die.roll(); System.out.print(die.top() + " ");
50           die.roll(); System.out.print(die.top() + " ");
51           die.roll(); System.out.print(die.top() + " ");
52           die.roll(); System.out.print(die.top() + " ");
53           die.roll(); System.out.print(die.top() + " ");
54           System.out.println("");
55       }
56       private static void createAndRollStandardDie(int nrOfTimes) {
57           System.out.println("Roll a standard die " + nrOfTimes + " times ...");
58           Die lucky = new Die(nrOfTimes);
59           int i =1;
60           while (i <= nrOfTimes) {
61               lucky.roll();
62               System.out.print(lucky.top() + " ");
63               i = i + 1;
64           }
65           System.out.println();
66       }
67       private static void createAndRollNineSidedDie(int nrOfTimes) {
68           System.out.println("Roll a 9 sided die " + nrOfTimes + " times ...");
69           Die lucky = new Die(9);
70           int i =1;
71           while (i <= nrOfTimes) {
72               lucky.roll();
73               System.out.print(lucky.top() + " ");
74               i = i + 1;
75           }
76           System.out.println();
77   
78       }
79       private static void createAndRollStandardDieFor1() {
80           Die lucky = new Die();
81           lucky.roll();
82           System.out.print(lucky.top() + " ");
83           while (lucky.top() != 1) {
84               lucky.roll();
85               System.out.print(lucky.top() + " ");
86           }
87           System.out.println();
88       }
89   
90       private static void createAndRollTwelveSidedDieFor1() {
91           Die lucky = new Die(12);
92           lucky.roll();
93           System.out.print(lucky.top() + " ");
94           while (lucky.top() != 1) {
95               lucky.roll();
96               System.out.print(lucky.top() + " ");
97           }
98           System.out.println();
99       }
100  }