Roller.java
1    /* 
2    Uses 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           createAndRollStandardDieFiveTimes();
12           createAndRollTwentySidedDieFiveTimes();
13           createAndRollStandardDie(20);
14           createAndRollStandardDie(30);
15           createAndRollNineSidedDie(20);
16           createAndRollNineSidedDie(30);
17   
18           for (int i = 1 ; i <= 10 ; i ++) {
19               createAndRollStandardDieFor1();
20           }
21   
22           for (int i = 1 ; i <= 10 ; i ++) {
23               createAndRollTwelveSidedDieFor1();
24           }
25       }
26   
27       private static void createAndRollStandardDieFiveTimes() {
28           System.out.println("Roll a standard die 5 times ...");
29           Die die = new Die();
30           die.roll(); System.out.println(die.top() + " "); // first roll - return top
31           die.roll(); System.out.println(die.top() + " ");
32           die.roll(); System.out.println(die.top() + " ");
33           die.roll(); System.out.println(die.top() + " ");
34           die.roll(); System.out.println(die.top() + " "); // last roll - return top
35           System.out.println(); // skip a line before the next task
36       }
37   
38       private static void createAndRollTwentySidedDieFiveTimes() {
39           System.out.println("Roll a twenty sided die 5 times ...");
40           Die die = new Die(20);
41           die.roll(); System.out.println(die.top() + " "); // first roll - return top
42           die.roll(); System.out.println(die.top() + " ");
43           die.roll(); System.out.println(die.top() + " ");
44           die.roll(); System.out.println(die.top() + " ");
45           die.roll(); System.out.println(die.top() + " "); // last roll - return top
46           System.out.println(); // skip a line before the next task
47   
48       }
49   
50       private static void createAndRollStandardDie( int nrOfTimes ) {
51           System.out.println("Roll a standard die " + nrOfTimes + " times ...");
52           Die lucky = new Die();
53           /*for (int i = 1; i <= nrOfTimes; i = i + 1) { 
54               lucky.roll(); 
55               System.out.print(lucky.top() + " "); 
56           }*/
57           int i = 1;
58           while ( i <= nrOfTimes){
59               lucky.roll();
60               System.out.print(lucky.top() + " ");
61               i = i + 1 ;
62           }
63           System.out.println();
64       }
65   
66       private static void createAndRollNineSidedDie( int nrOfTimes ) {
67           System.out.println("Roll a nine sided die " + nrOfTimes + " times ...");
68           Die lucky = new Die(9);
69           int i = 1;
70           while ( i <= nrOfTimes){
71               lucky.roll();
72               System.out.print(lucky.top() + " ");
73               i = i + 1 ;
74           }
75           System.out.println();
76       }
77   
78       private static void createAndRollStandardDieFor1() {
79           System.out.println("Roll a standard die for 1 ... ");
80           Die lucky = new Die(9);
81           int i = 1;
82           while ( i <= 10){
83               lucky.roll();
84               System.out.print(lucky.top() + " ");
85               i = i + 1 ;
86           }
87           System.out.println();
88       }
89   
90       private static void createAndRollTwelveSidedDieFor1() {
91           System.out.println("Roll a twelve sided die for 1 ... ");
92           Die lucky = new Die(12);
93           int i = 1;
94           while ( i <= 10){
95               lucky.roll();
96               System.out.print(lucky.top() + " ");
97               i = i + 1 ;
98           }
99           System.out.println();
100      }
101  }