双色球随机生成中奖序列,并判断是否中奖且为几等奖

package catcher;
 import java.util.Arrays;
 import java.util.Random;
 import java.util.Scanner;public class DoubleColorBall {
     public static void main(String[] args) {
         //随机数生成红球并存入数组
         Random number = new Random();
         int num = 0;
         int n = 0;
         //红球数组
         int[] red = new int[6];
         //蓝球数组
         int bluenum = 0;
         //设置电脑自动生成或者用户自己选择
         Scanner scanner = new Scanner(System.in);
         System.out.println("请选择您所需的服务!");
         System.out.println("1.自己选号");
         System.out.println("2.自动选号");
         int choice = scanner.nextInt();
         //手动输入数值
         if(choice==1) {
             for(int i=0;i<red.length;i++) {
                 //循环键盘输入红球数值
                 System.out.println("红色号码范围为1~33");
                 System.out.println("请输入用户所选的红色号码第"+(i+1)+"个");
                 red[i] = scanner.nextInt();
                 //判断红球数值是否符合范围要求
                 while(red[i]<1 || red[i]>33) {
                     System.out.println("请输入正确的数值!(1~33)");
                     red[i] = scanner.nextInt();
                 }
                 //判断输入值是否有重复
                 for(int j=i-1;j>=0;j--) {
                     while(red[j]==red[i]) {
                         System.out.println("请不要输入重复值");
                         System.out.println("请输入用户所选的红色号码第"+(i+1)+"个");
                         red[i] = scanner.nextInt();
                         //判断重新输入值后是否符合要求
                         while(red[i]<1 || red[i]>33) {
                             System.out.println("请输入正确的数值!(1~33)");
                             red[i] = scanner.nextInt();
                         }
                     }
                 }
             }
             //对数组进行排列
             Arrays.sort(red);
             //输入蓝球数值
             System.out.println("请输入用户所选的蓝色号码1~16");
             bluenum = scanner.nextInt();
             //判断蓝球是否符合范围
             while(bluenum<1 || bluenum>16) {
                 System.out.println("请输入正确的数值!(1~16)");
                 bluenum = scanner.nextInt();
             }
         }
         //自动输入数值
         if(choice==2) {
             while(num<red.length) {
                 //设置红球随机数的范围1~33
                 int rednum = number.nextInt(33)+1;
                 //判断随机数组中是否存在重复数字
                 if(!(Arrays.binarySearch(red, rednum) >= 0)) {
                     red[0] = rednum;
                     num++;
                 }
                 Arrays.sort(red);
             }
             //设置蓝球的随机数范围为1~16
             bluenum = number.nextInt(16)+1;
         }
         
         //输出双色球号
         System.out.print("红球号码为:");
         for(int i=0;i<red.length;i++) {
             System.out.print(red[i]+" ");
         }
         System.out.println("蓝球号码为:"+bluenum);
         
         
         
         System.out.println("--------以下是此次中奖的号码----------");
         //生成本次获奖的双色球号
         //中奖的红色号码
         int[] redwinning = new int[6];
         //中奖的蓝色号码
         int bluewinning = 0;
         while(n<redwinning.length) {
             //设置红球随机数的范围1~33
             int rednum = number.nextInt(33)+1;
             //判断随机数组中是否存在重复数字
             if(!(Arrays.binarySearch(redwinning, rednum) >= 0)) {
                 redwinning[0] = rednum;
                 n++;
             }
             Arrays.sort(redwinning);
         }
         //显示中奖的号码
         bluewinning = number.nextInt(16)+1;
         System.out.print("红球号码为:");
         for(int i=0;i<redwinning.length;i++) {
             System.out.print(redwinning[i]+" ");
         }
         System.out.println("蓝球号码为:"+bluewinning);
         
         //判断此次中奖为几等奖
         //设置红球中奖基数
         int redwin = 0;
         //设置蓝球中奖基数
         int bluewin = 0;
         //红球的对比
         for(int i=0;i<6;i++) {
             if(redwinning[i]==red[i]) {
                 redwin+=1;
             }
         }
         //蓝球的对比
         if(bluenum==bluewinning) {
             bluewin=1;
         }
         //中奖标准
         int count = 0;
         //一等奖的中奖条件
         if(redwin==6&&bluewin==1) {
             count = 1;
         }
         //二等奖的中奖条件
         if(redwin==6) {
             count = 2;
         }
         //三等奖的中奖条件
         if(redwin==5&&bluewin==1) {
             count = 3;
         }    
         //四等奖的中奖条件
         if((redwin==5)||(redwin==4&&bluewin==1)) {
             count = 4;
         }
         //五等奖的中奖条件
         if((redwin==4)||(redwin==3&&bluewin==1)) {
             count = 5;
         }
         if((redwin==2&&bluewin==1)||(redwin==1&&bluewin==1)||(bluewin==1)) {
             count = 6;
         }else {
             //没有中奖的情况
             count = 0;
         }
         switch(count) {
             case 0:System.out.println("不好意思朋友!你并没有中奖!要不,再来一发?");break;
             case 1:System.out.println("恭喜你中了一等奖!奖金:500万!");break;
             case 2:System.out.println("恭喜你中了二等奖!奖金:150万!");break;
             case 3:System.out.println("恭喜你中了三等奖!奖金:3000元!");break;
             case 4:System.out.println("恭喜你中了四等奖!奖金:200元!");break;
             case 5:System.out.println("恭喜你中了五等奖!奖金:10元!");break;
             case 6:System.out.println("恭喜你中了六等奖!奖金:5元!");break;
         }
     }        
 }


中奖标准如图所示:

java实现激活码 java兑换码生成_蓝桥杯