1. 程式人生 > >Introduction to Java Programming程式設計題5.32

Introduction to Java Programming程式設計題5.32

/*
You rolled 5 + 5 = 10
Point is 10
You rolled 6 + 2 = 8
Point is 8
You rolled 5 + 2 = 7
You lose
1********************
You rolled 3 + 3 = 6
Point is 6
You rolled 6 + 4 = 10
You win
2********************
You rolled 2 + 3 = 5
Point is 5
You rolled 5 + 4 = 9
Point is 9
You rolled 5 + 4 = 9
Point is 9
You rolled 6 + 6 = 12
Point is 12
You rolled 5 + 3 = 8
Point is 8
You rolled 1 + 5 = 6
Point is 6
You rolled 1 + 6 = 7
You lose
3********************
You rolled 1 + 6 = 7
You lose
4********************
You rolled 2 + 6 = 8
Point is 8
You rolled 6 + 5 = 11
Point is 11
You rolled 4 + 2 = 6
Point is 6
You rolled 1 + 2 = 3
Point is 3
You rolled 1 + 4 = 5
Point is 5
You rolled 1 + 6 = 7
You lose
5********************
You rolled 5 + 3 = 8
Point is 8
You rolled 6 + 3 = 9
Point is 9
You rolled 4 + 4 = 8
Point is 8
You rolled 6 + 6 = 12
Point is 12
You rolled 5 + 2 = 7
You lose
6********************
You rolled 4 + 3 = 7
You lose
7********************
You rolled 3 + 1 = 4
Point is 4
You rolled 2 + 6 = 8
Point is 8
You rolled 2 + 1 = 3
Point is 3
You rolled 1 + 2 = 3
Point is 3
You rolled 4 + 1 = 5
Point is 5
You rolled 1 + 2 = 3
Point is 3
You rolled 1 + 6 = 7
You lose
8********************
You rolled 5 + 5 = 10
You win
9********************
You rolled 4 + 4 = 8
Point is 8
You rolled 4 + 3 = 7
You lose
10********************
You total win 2 seconds.
*/
public class CountWinGameDice { public static void main(String[] args) { int a, b, sum1, count = 0, sum2 = 0, countWin = 0, seconds = 0; for (int i = 0; i < 10000; i++) { while (true) { a = (int)(Math.random() * 6 + 1); b = (int)(Math.random() * 6 + 1); sum1 = a + b; System.out
.println("You rolled " + a + " + " + b + " = " + sum1); if (count++ == 0) if (firstDice(sum1)) { sum2 = sum1; continue; } else { if (sum1 == 7 || sum1 == 11) countWin++; break; } if (isWin(sum1, sum2)) { if
(sum1 == sum2) countWin++; break; } } seconds++; System.out.println(seconds + "**********************"); } System.out.println("You total win " + countWin + " seconds."); } public static boolean firstDice(int sum) { if (sum == 3 || sum == 12) System.out.println("You lose"); else if (sum == 7 || sum == 11) System.out.println("You win"); else { System.out.println("Point is " + sum); return true; } return false; } public static boolean isWin(int sum1, int sum2) { if (sum2 == sum1) System.out.println("You win"); else if (sum1 == 7) System.out.println("You lose"); else { System.out.println("Point is " + sum1); return false; } return true; } }