java双色球实现买彩票与开奖
需求:
双色球投注区分为红色球号码区和蓝色球号码区,
红色球号码区由1-33共33个号码组成,蓝色球号码区由1-16共16个号码组成。
投注时选择6个红球号码和1个蓝球号码组成一注进行单式投注,每注金额2元。
一等奖:投注号码与当期开奖号码全部相同(顺序不限,下同),即中奖;
二等奖:投注号码与当期开奖号码中的6个红色球号码相同,即中奖;
三等奖:投注号码与当期开奖号码中的任意5个红色球号码和1个蓝色球号码相同,即中奖;
四等奖:投注号码与当期开奖号码中的任意5个红色球号码相同,或与任意4个红色球号码和1个蓝色球号码相同,即中奖;
五等奖:投注号码与当期开奖号码中的任意4个红色球号码相同,或与任意3个红色球号码和1个蓝色球号码相同,即中奖;
六等奖:投注号码与当期开奖号码中的1个蓝色球号码相同,即中奖。
目标: 程序运行开始显示主界面,分别有买彩票,开奖,退出,三个选项。
进入购买彩票界面分别有随机产生彩票,自己选彩票,退出,三个选项。
进入开奖界面可以查看开奖结果。
开奖的函数
public static void Reward(int arr[]){
//开奖
Scanner sc = new Scanner(System.in );
int [] arrj=new int[7];
arrj[0]=1;
arrj[1]=12;
arrj[2]=13;
arrj[3]=16;
arrj[4]=19;
arrj[5]=31;
arrj[6]=15;
System.out.println("开奖结果为");
for(int i=0;i<7;i++){
System.out.println(arrj[i]);
}
int countred=0;
int countblue=0;
for(int x=0;x<6;x++){
for(int y=0;y<=6;y++){
if(arr[x]==arrj[y]){
countred++;
}else if(arr[x]!=arrj[y]){
countred+=0;
}
}
}
if(arr[6]==arrj[6]){
countblue+=1;
}
if(countred==6&&countblue==1){
System.out.println("恭喜你中了一等奖");
}
else if(countred==6&&countblue==0){
System.out.println("恭喜你中了二等奖");
}
else if(countred==5&&countblue==1){
System.out.println("恭喜你中了三等奖");
}
else if((countred==5&&countblue==0)||(countred==4&&countblue==1)){
System.out.println("恭喜你中了四等奖");
}
else if((countred==4&&countblue==0)||(countred==3&&countblue==1)){
System.out.println("恭喜你中了五等奖");
}
else if(countred==0&&countblue==1){
System.out.println("恭喜你中了六等奖");
}else{
System.out.println("很遗憾你没有中奖");
}
System.out.println("请按0返回");
int num=sc.nextInt();
if(num==0){
Maina(arr);
}
}
随机产生彩票并输出
int redboor=(int)(Math.random()*33);
if(redboor!=arr[0]&&redboor!=arr[1]&&redboor!=arr[2]&&redboor!=arr[3]&&redboor!=arr[4]&&redboor!=arr[5]){
arr[i]=redboor;
}else{
i--;
}
自己选择彩票并输出
System.out.println("请输入你选的红色球号码");
for(int i=0;i<6;i++){
int num3=sc.nextInt();
if(num3<=33&&num3!=arr[0]&&num3!=arr[1]&&num3!=arr[2]&&num3!=arr[3]&&num3!=arr[4]&&num3!=arr[5]){
arr[i]=num3;
}
else{
System.out.println("你输入的数据有误");
i--;
}
}
System.out.println("请输入你选的蓝色球号码");
//int num5=sc.nextInt();
for(int i=6;i<7;i++){
int num5=sc.nextInt();
if(num5<=16){
arr[6]=num5;
}else{
System.out.println("你输入的数据有误");
i--;
}
}
System.out.println("你选的球号码是");
for(int j=0;j<7;j++){
System.out.println(arr[j]);
}
函数的调用要传参。
数组的赋值,arr[n]=12;
随机数(0-1之间)的产生:int x=(int)Math.random();
主要用到了for循环和if……else语句。