java语言的科学与艺术-编程练习6.5
2012-12-11 11:47
429 查看
/* * File:GambleMachine.java * ------------------------ * 模拟“赌博机” */ import acm.util.*; import acm.program.*; public class GambleMachine extends ConsoleProgram { public void run(){ String ask = "Would you like to play? "; if(readLine("Would you like instructions? ").equals("yes")){ println("BAR BAR BAR -- YOU WILL WIN $250"); println("BELL BELL BELL -- YOU WILL WIN $20"); println("................");/*介绍懒得写了*/ } while(true){ if(askQuestion()){ MONEY -= 1; if(MONEY == 0) break; oneTime(); }else{ break; } } } /* * 进行询问是否继续。 */ private boolean askQuestion(){ String list = "You have $" + MONEY + ". "; String ask = "Would you like to play? "; boolean result = false; if(readLine(list + ask).equals("yes")){ result = true; }else{ result = false; } return result; } /* * 执行一次赌博机 * 如果获利,加上相应的MONEY。 */ private void oneTime(){ int window1 = rgen.nextInt(1, 6); int window2 = rgen.nextInt(1, 6); int window3 = rgen.nextInt(1, 6); if(window1 == 6 && window2 == 6 && window3 == 6){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $250"); MONEY += 250; } else if(window1 == 5 && window2 == 5 && window3 == 5){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $20"); MONEY += 20; } else if(window1 == 5 && window2 == 5 && window3 == 6){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $20"); MONEY += 20; } else if(window1 == 4 && window2 == 4 && window3 == 4){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $14"); MONEY += 14; } else if(window1 == 4 && window2 == 4 && window3 == 6){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $14"); MONEY += 14; } else if(window1 == 3 && window2 == 3 && window3 == 3){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $10"); MONEY += 10; } else if(window1 == 3 && window2 == 3 && window3 == 6){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $10"); MONEY += 10; } else if(window1 == 1 && window2 == 1 && window3 == 1){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $7"); MONEY += 7; } else if(window1 == 1 && window2 == 1 && window3 != 1){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $5"); MONEY += 5; } else if(window1 == 1 && window2 != 1 && window3 != 1){ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You win $2"); MONEY += 2; } else{ println(listWin(window1) + " " + listWin(window2) + " " + listWin(window3) + "-- You lose"); } } /* * 用于将随机数和赌博机结果对应。 */ private String listWin(int n){ String str = ""; switch(n){ case 1: str = "CHEERY"; break; case 2: str = "LEMON"; break; case 3: str = "ORANGE"; break; case 4: str = "PLUM"; break; case 5: str = "BELL"; break; case 6: str = "BAR"; break; } return str; } /* Create an instance variable for the random number generator */ private RandomGenerator rgen = RandomGenerator.getInstance(); /* private constants */ private int MONEY = 50; }
相关文章推荐
- java语言的科学与艺术-编程练习7.4
- java语言的科学与艺术-编程练习10.11
- java语言的科学与艺术-编程练习11.1
- java语言的科学与艺术-编程练习7.1
- java语言的科学与艺术-编程练习8.2
- java语言的科学与艺术-编程练习11.X
- java语言的科学与艺术-编程练习
- java语言的科学与艺术-编程练习---打砖块游戏
- java语言的科学与艺术-编程练习---10.5(简单的绘图程序)
- java语言的科学与艺术-编程练习10.2
- java语言的科学与艺术-编程练习2.9
- java语言的科学与艺术-编程练习4.14
- java语言的科学与艺术-编程练习4.15
- java语言的科学与艺术-编程练习3.10
- java语言的科学与艺术-编程练习4.11
- java语言的科学与艺术-编程练习10.4
- java语言的科学与艺术-编程练习6.6
- java语言的科学与艺术-编程练习---创建简单的GUI
- java语言的科学与艺术-编程练习---简单的四则运算计算器
- java语言的科学与艺术-编程练习Hailstone