双色球系统(java)

 双色球系统主要分三大模块:luckNumbers userInputNumbers 以及对比判断(judge)


 

package practice;

import java.util.Random;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        //随机6个红球号码(1-33,不重复),随机一个蓝球号码(1-16),可以采用数组装起来作为中奖号码
        int[] luckNumbers = cteatLuckNumber();
        //用户选号
        int[] userNumbers = userInputNumber();
        //判断中奖情况
        judge(luckNumbers,userNumbers);
    }
    
    public static void printArray(int[] numbers){
        for (int i = 0; i < numbers.length; i++) {
            System.out.print(numbers[i]+" ");
        }
        System.out.println();
    }

    public static int[] cteatLuckNumber(){
        int[] numbers=new int[7];
        //生成6个不重复的红球号码
        Random r = new Random();
        for (int i = 0; i < 6; i++) {
            while(true) {
                int data = r.nextInt(33) + 1;
                boolean flag = true;
                for (int j = 0; j < i; j++) {
                    if (numbers[j] == data) {
                        flag = false;
                        break;
                    }
                }
                if (flag) {
                    numbers[i] = data;
                    break;
                }
            }
        }
        //生成一个蓝球号码
        numbers[6] = r.nextInt(16)+1;
        return numbers;
    }

    public static int[] userInputNumber(){
        int[] numbers=new int[7];
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < numbers.length-1; i++) {
            System.out.println("请您输入第"+(i+1)+"个红球号码(1-33,不重复)");
            numbers[i] = sc.nextInt();
        }
        System.out.println("请您输入蓝球号码(1-16)");
        numbers[6] = sc.nextInt();
        return numbers;
    }

    public static void judge(int[] luckNumbers,int[] userNumbers){
        int redHitnumbers=0;
        int blueHitnumbers=0;
        for (int i = 0; i < luckNumbers.length-1; i++) {
            for (int j = 0; j < userNumbers.length-1; j++) {
                if(userNumbers[j] == luckNumbers[i]){
                    redHitnumbers++;
                    break;
                }
            }
        }
        blueHitnumbers= userNumbers[6]==luckNumbers[6] ? 1 : 0;
        //判断中奖情况
        System.out.println("中奖号码是: ");
        printArray(luckNumbers);
        System.out.println("您投注的号码是: ");
        printArray(userNumbers);
        System.out.println("您命中红球的个数是: "+redHitnumbers);
        System.out.println("您是否命中蓝球: "+ (blueHitnumbers==1?"是":"否"));

        if(blueHitnumbers==1 && redHitnumbers<3){
            System.out.println("恭喜您中了六等奖5元!");
        } else if (blueHitnumbers == 1 && redHitnumbers == 3 ||
                   blueHitnumbers ==0 && redHitnumbers==4) {
            System.out.println("恭喜您中了五等奖10元!");
        }else if (blueHitnumbers == 1 && redHitnumbers == 4 ||
                blueHitnumbers ==0 && redHitnumbers==5) {
            System.out.println("恭喜您中了四等奖200元!");
        }else if (blueHitnumbers == 1 && redHitnumbers == 5) {
            System.out.println("恭喜您中了三等奖3000元!");
        }else if (blueHitnumbers == 0 && redHitnumbers == 6) {
            System.out.println("恭喜您中了二等奖500万元!");
        }else if (blueHitnumbers == 1 && redHitnumbers == 5) {
            System.out.println("恭喜您中了一等奖1000万元!");
        }else {
            System.out.println("感谢您为福利事业作出的突出贡献!");
        }
    }
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值