import java.util.Random;
import java.util.Scanner;
/**
* 双色球投注区分为红球号码区和蓝球号码区,红球号码范围为01~33,蓝球号码范围为01~16。
* 双色球每期从33个红球中开出6个号码,从16个蓝球中开出1个号码作为中奖号码,
* 双色球玩法即是竞猜开奖号码的6个红球号码和1个蓝球号码,顺序不限。
* 1、产生蓝球和红球,是机选呢,还是手选,机选的还就随机产生6红1蓝,
2、接收用户选号
3、验证是否中奖
4、公布本期中奖号码
*/
public class Day5 {
public static void main(String[] args) {
int[] userRedBall = new int [6];
int userBlueBall = 0;
int[] sysRedBall = new int[6]; //系统随机生成六个空间的随机数
int sysBlueBall = 0;
int redCount = 0; //记录红球的选中的个数
int blueCount = 0; //记录蓝球的选中的个数
//填充红求被选区数组
Random r = new Random();
int[] redBall = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33};
int index = 0; //用于作为下标
for(int i=0;i<sysRedBall.length;i++){ // 生成六个红球
while(true){ //不知道要循环的次数
index = r.nextInt(33); // 每次生成一个下表
if(redBall[index]!=-1){ //不等于-1表示当前号还在,当等于-1,那么这个号码就被取过了
sysRedBall[i] = redBall[index];
redBall[index] = -1; //
break;
}
}
}
sysBlueBall = r.nextInt(16)+1; // 生成篮球
//接受用户的选号
Scanner input = new Scanner(System.in);
System.out.println("请选择(1-33不重复的红球号码)");
for(int i=0;i<userRedBall.length;i++){
userRedBall[i] = input.nextInt(); //将用户的选的数存入
}
System.out.println("请选择1个篮球的号码(1 - 16)");
userBlueBall = input.nextInt();
//判断用户是否中奖
for(int i=0;i<sysRedBall.length;i++){
for(int j=0;j<userRedBall.length;j++){
if(sysRedBall[i]==userRedBall[j]){
redCount++;
break;
}
}
}
if(redCount==6 && blueCount==1){
System.out.println("恭喜你中了一等奖");
}else if(redCount==6 && blueCount==0){
System.out.println("恭喜你中了二等奖");
}else if(redCount==5 && blueCount==1){
System.out.println("恭喜你中了三等奖");
}else if((redCount==5 && blueCount==0) || (redCount==4 && blueCount==1)){
System.out.println("恭喜你中了四等奖");
}else if((redCount==4 && blueCount==0) || (redCount==3 && blueCount==1)){
System.out.println("恭喜你中了五等奖");
}else if(blueCount==1){
System.out.println("恭喜你中了六等奖");
}else{
System.out.println("没有中奖,继续努力");
}
//公布结果
System.out.println("本期的红球号码");
int temp =1;
for(int i=0;i<sysRedBall.length-1;i++){
for(int j=0;j<sysRedBall.length-1-i;j++){
if(sysRedBall[j]>sysRedBall[j+1]){
temp = sysRedBall[j];
sysRedBall[j] = sysRedBall[j+1];
sysRedBall[j+1] = temp;
}
}
}
for(int i=0;i<sysRedBall.length;i++){
System.out.print(sysRedBall[i]+" ");
}
System.out.println();
System.out.println("本期的篮球号码是 :"+sysBlueBall);
}
}