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 GET 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();
40           System.out.print(die.top() + " ");
41           die.roll();
42           System.out.print(die.top() + " ");
43           die.roll();
44           System.out.print(die.top() + " ");
45           die.roll();
46           System.out.print(die.top() + " ");
47           die.roll();
48           System.out.print(die.top() + " ");
49           System.out.println();
50       }
51   
52       private static void createAndRollTwentySidedDieFiveTimes() {
53           System.out.println("Roll a twenty sided die 5 times...");
54           Die die = new Die(20);
55           die.roll();
56           System.out.print(die.top() + " ");
57           die.roll();
58           System.out.print(die.top() + " ");
59           die.roll();
60           System.out.print(die.top() + " ");
61           die.roll();
62           System.out.print(die.top() + " ");
63           die.roll();
64           System.out.print(die.top() + " ");
65           System.out.println();
66       }
67   
68       private static void createAndRollStandardDie(int nrOfTimes) {
69           System.out.println("Roll a standard die " + nrOfTimes + " times...");
70           Die lucky = new Die();
71           int i = 1;
72           while (i <= nrOfTimes) {
73               lucky.roll();
74               System.out.print(lucky.top() + " ");
75               i = i + 1;
76           }
77           System.out.println();
78       }
79   
80       private static void createAndRollNineSidedDie(int nrOfTimes) {
81           System.out.println("Roll a nine sided die " + nrOfTimes + " times...");
82           Die lucky = new Die();
83           int i = 1;
84           while (i <= nrOfTimes) {
85               lucky.roll();
86               System.out.print(lucky.top() + " ");
87               i++;
88           }
89           System.out.println();
90       }
91   
92       private static void createAndRollStandardDieFor1() {
93           Die die = new Die();
94           die.roll();
95           System.out.print(die.top() + " ");
96           while (die.top() > 1) {
97               die.roll();
98               System.out.print(die.top() + " ");
99           }
100          System.out.println();
101      }
102  
103      private static void createAndRollTwelveSidedDieFor1() {
104          Die die = new Die(12);
105          die.roll();
106          System.out.print(die.top() + " ");
107          while (die.top() > 1) {
108              die.roll();
109              System.out.print(die.top() + " ");
110          }
111          System.out.println();
112      }
113  }
114