Roller.java
1    /* 
2     * Program to make use of Die class 
3     */
4    
5    
6    package chanceapps;
7    
8    import chance.Die;
9    
10   public class Roller {
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 createAndRollTwentySidedDieFiveTimes() {
37           System.out.println("Roll a Twenty Sided die 5 times ...");
38           Die die = new Die(20);
39           for(int i = 0; i < 5; i++){
40               die.roll(); System.out.println(die.top() + " ");
41           }
42           System.out.println();
43       }
44   
45       private static void createAndRollStandardDie(int nrOfTimes) {
46           System.out.println("Roll a standard die " + nrOfTimes + " times...");
47           Die lucky = new Die();
48           int i = 1;
49           while(i <= nrOfTimes){
50               lucky.roll();
51               System.out.print(lucky.top() + " ");
52               i++;
53           }
54           System.out.println();
55       }
56   
57       private static void createAndRollNineSidedDie(int nrOfTimes) {
58           System.out.println("Roll a nine sided die " + nrOfTimes + " times...");
59           Die lucky = new Die(9);
60           int i = 1;
61           while(i <= nrOfTimes){
62               lucky.roll();
63               System.out.print(lucky.top() + " ");
64               i++;
65           }
66           System.out.println();
67       }
68   
69       private static void createAndRollStandardDieFor1() {
70           Die die = new Die();
71           if(die.top() == 1) System.out.print(die.top() + " ");
72           while(die.top() != 1){
73               die.roll();
74               System.out.print(die.top() + " ");
75           }
76           System.out.println();
77       }
78   
79       private static void createAndRollTwelveSidedDieFor1() {
80           Die die = new Die(12);
81           if(die.top() == 1) System.out.print(die.top() + " ");
82           while(die.top() != 1){
83               die.roll();
84               System.out.print(die.top() + " ");
85           }
86           System.out.println();
87       }
88   
89       private static void createAndRollStandardDieFiveTimes(){
90           System.out.println("Roll a standard die 5 times ...");
91           Die die = new Die();
92           for(int i = 0; i < 5; i++){
93               die.roll(); System.out.println(die.top() + " ");
94           }
95           System.out.println();
96       }
97   
98   }
99