0710作业

import java.util.Scanner;

public class ShuangSeQiu {
    public static void main(String[] args){  //程序入口 main方法
        int Money = 0; //总钱数
        int price = 2;      //单注金额
        int count = 0;      //买的注数
        int num[]= null;       //存储买的球号

        Scanner sc = new Scanner(System.in); 

        //首先建立流程循环控制do while 循环
        do{  //调用主菜单
            menu();

            //在主菜单上选择
            int a = sc.nextInt();
            //进入switch 语句循环
            switch(a){
                case 1:
                    //购买彩票
                    System.out.println("你需要买多少注?");
                    count = sc.nextInt();
                    Money = count * price;

                    //开始选号
                    num = new int[7];
                    for (int i = 0;i < num.length; i++) {
                        int red;
                        int blue;
                        if(i < num.length-1){
                        System.out.println("请输入红球号码(1~33),第"+(i+1)+"个红色球号为:");
                        red = sc.nextInt();
                        num[i] = red ;
                        }else{
                        System.out.println("请输入蓝球号码(1~16)");
                        blue = sc.nextInt();
                        num[i]= blue;
                        }
                    }

                    //输出已经买好的彩票信息
                    System.out.println("你一共买了"+count+"注,共需支付"+Money+"元,所选号为:");
                    for(int i = 0;i < num.length;i++){
                        System.out.print(num[i]+"\t");
                    }
                    System.out.println();
                    break;

                case 2:
                    System.out.println("查看开奖");
                            //调用方法
                        int luckNum[] = getLuckNum();

                        System.out.print("你购买的彩票号为:");
                        for(int q = 0;q < num.length;q++){
                            System.out.print(num[q]+"\t");
                        }
                        System.out.println();

                        //输出当期的中奖号
                        System.out.print("当期的中奖号为:");
                        for(int n = 0;n < luckNum.length;n++){
                            System.out.print(luckNum[n]+"\t");
                        }
                        System.out.println();

                        //对获奖等级进行判断
                        //调用方法
                        int result = getResult(num,luckNum);
                        if (result ==1) {
                            System.out.println("一等奖,恭喜你!");
                        }else if (result == 2) {
                            System.out.println("二等奖,恭喜你!");
                        }else if (result == 3) {
                            System.out.println("三等奖,恭喜你!");
                        }else if (result == 4) {
                            System.out.println("四等奖,恭喜你!");
                        }else if (result == 5) {
                            System.out.println("五等奖,恭喜你!");
                        }else if (result == 6) {
                            System.out.println("六等奖,恭喜你!");
                        }else{
                            System.out.println("没中奖,希望下次有好运气");
                        }
                        System.out.println();
                    
                    break;

                case 3:
                    System.out.println("谢谢使用");
                    break;

                default:
                    System.out.println("对不起,你输入的数字有误");
                    break;
            }
        }while(true);

    }

    //主菜单
    /*
    1.返回类型 void
    2.参数类型 
    */
    public static void menu(){
        System.out.println("*****欢迎进入双色球彩票系统*****");
        System.out.println("    1.购买彩票" );
        System.out.println("    2.查看开奖" );
        System.out.println("    3.退出" );
        System.out.println("==================================");
        System.out.println("请选择菜单:");
    }

          //随机生成中奖号
          /*
          1.返回值类型 int[]
          2.参数类型 
          */
    public static int[] getLuckNum(){
        int[]luckNum = new int[7];
        luckNum[0]=(int)((Math.random()*33)+1);
        boolean flag = true;
        
        a:while(flag){ //标号
            for (int i = 0;i < luckNum.length ;i++ ) {
                if (i < luckNum.length-1) {
                    for(int j = 0;j < i;j++){//将生成的号进行对比,确保不重复
                        if(luckNum[j]==luckNum[i]){
                            luckNum[i]=(int)((Math.random()*33)+1);
                        }
                    }
                }else{
                    luckNum[i]=(int)(Math.random()*16)+1;
                }
            }
            flag = false;
        }
        return luckNum;
    }
    //获奖级别
    /*
    1.返回值类型 int
    2.参数类型 int[]num ,int[]luckNum
    */
    public static int getResult(int[]num,int[]luckNum){
        int luckLeavl = 0;//中将等级1~6
        int redCount = 0;
        int blueCount = 0;

        for (int i = 0;i < num.length ;i++ ) {
            if(i < num.length-1){
                int r = num[i];
                for (int j = 0;j < luckNum.length-1 ;j++ ) {
                    if(r==luckNum[j]){
                        redCount++;
                    }
                }
            }else{
                if (num[num.length-1]==luckNum[luckNum.length-1]) {
                    blueCount++;
                }
            }
        }

        //将结果进行比较
        if (redCount==6 &&blueCount==1) {
            luckLeavl=1;
        }else if (redCount==6) {
            luckLeavl=2;
        }else if (redCount==5&&blueCount==1) {
            luckLeavl=3;
        }else if ((redCount==5)||(redCount==4&&blueCount==1)) {
            luckLeavl=4;
        }else if ((redCount==4)||(redCount==3&&blueCount==1)) {
            luckLeavl=5;
        }else if (blueCount==1) {
            luckLeavl=6;
        }
        return luckLeavl;
    }
}

猜你喜欢

转载自www.cnblogs.com/zhangzheng1989/p/9291143.html
今日推荐