JAVA课程作业1--骰子游戏

题目要求:

掷两个骰子,每个骰子有六面,
分别为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;
            };

        }

}

猜你喜欢

转载自blog.csdn.net/qq_37999723/article/details/78287255