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       public static void main(String[] args) {
11           // CREATE A STANDARD DIE AND ROLL IT 5 TIMES
12           createAndRollStandardDieFiveTimes();
13           // CREATE A TWENTY SIDED DIE AND ROLL IT 5 TIMES
14           createAndRollTwentySidedDieFiveTimes();
15           // CREATE A STANDARD DIE AND ROLL IT 20 TIMES
16           createAndRollStandardDie(20);
17           // CREATE A STANDARD DIE AND ROLL IT 30 TIMES
18           createAndRollStandardDie(30);
19           // CREATE A TEN SIDED DIE AND ROLL IT 20 TIMES
20           createAndRollNineSidedDie(20);
21           // CREATE A NINE SIDED DIE AND ROLL IT 30 TIMES
22           createAndRollNineSidedDie(30);
23           // TEN TIMES, CREATE A STANDARD DIE AND ROLL IT UNTIL YOU GET A 1
24           System.out.println("Ten times, roll a standard die for a 1.");
25           for (int i = 1; i <= 10; i++) {
26               createAndRollStandardDieFor1();
27           }
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("\nRoll a twenty sided die fives times");
54           Die dice = new Die(20);
55           for (int i = 1; i <=5; i++){
56               dice.roll();
57               System.out.println(dice.top() + " ");
58           }
59       }
60   
61       private static void createAndRollStandardDie(int nrOfTimes) {
62           System.out.println("\nRoll a Standard die "  +  nrOfTimes  +  " times...");
63           Die lucky = new Die();
64           int i = 1;
65           while(i<= nrOfTimes) {
66               lucky.roll();
67               System.out.print(lucky.top() + " ");
68               i = i + 1;
69           }
70           System.out.println();
71       }
72   
73       private static void createAndRollNineSidedDie(int nrOfTimes) {
74           System.out.println("\nRoll a nine sided die "  +  nrOfTimes  +  " times..");
75           Die die = new Die(9);
76           int i = 0;
77           while(i <= nrOfTimes){
78               die.roll();
79               System.out.print(die.top()+ " ");
80               i++;
81           }
82           System.out.println();
83       }
84   
85       private static void createAndRollStandardDieFor1() {
86           Die die = new Die();
87           die.roll();
88           System.out.print(die.top()+ "  ");
89           while(die.top() !=1){
90               die.roll();
91               System.out.print(die.top()+ "  ");
92           }
93   
94           System.out.println();
95       }
96   
97       private static void createAndRollTwelveSidedDieFor1() {
98           Die die = new Die(12);
99           die.roll();
100          System.out.print(die.top() + " ");
101          while (die.top() !=1){
102              die.roll();
103              System.out.print(die.top() + " ");
104          }
105  
106          System.out.println();
107  
108  
109      }
110  }