JAVA課程作業1--骰子游戲
阿新 • • 發佈:2019-02-01
題目要求:
擲兩個骰子,每個骰子有六面,
分別為1、2、3、4、5、6。檢查這兩個骰子的和。
如果為2、3或12你就輸了;如果和是7或者11你就贏了。
但如果和是其他數字(例如4、5、6、8、9或者10),
就確定了一個點。繼續擲骰子直至丟擲一個7或者
擲出和剛才相同的點數。如果擲出的是7,你就輸了。
如果擲出的點數和你前一次擲出的點數相同,
你就贏了。
解題程式碼:
enum Status{
Win,Lose,Goon;
}
public class DiceGame {
public static int GetScore (){
return (int)(1+Math.random()*6);
}
public static int Start(){
int score1=GetScore();
int score2=GetScore();
return score1+score2;
}
public static Status judge(int sum1){
if(sum1==7||sum1==11){
return Status.Win;
}
else if(sum1==2||sum1==3||sum1==12){
return Status.Lose;
}
else
return Status.Goon;
}
public static void main(String [] args){
int sum1=Start();
int pre=sum1;
switch (judge(sum1)){
case Win:
System.out.println("恭喜你!你贏了!");break;
case Lose:
System.out.println("很遺憾!你輸了!");break;
case Goon:
int sum2=Start();
while(true){
if(sum2==pre){
System.out.println("恭喜你!你贏了!");break;
}
else if(sum2==7){
System.out.println("很遺憾!你輸了!");break;
}
else {
pre=sum2;
sum2=Start();
}
}
break;
};
}
}