admin管理员组文章数量:1026989
模拟双色球案例
/**模拟双色球案例准备相关变量1.用户选择是机选还是手选2.接受用户选号(6红,1蓝)3.生成系统号码(6红,1蓝)3.比较系统号码和用户号码,记录个数5.验证是否中奖6.系统号码排序7.公布结果
*/
import java.util.Scanner;
import java.util.Arrays;
import java.util.Random;
public class doubleball{public static void main(String[] args){//定义相关的变量int[] userRedBall = new int[6];//用户选择的红球号码int[] sysRedBall = new int[6];//系统生成的红球号码int userBlueBall = 0;//用户选择的篮球int sysBlueBall = 0;//系统生成的篮球int redCount = 0;//记录用户选择正确的红球数int blueCount = 0;//记录用户选择正确的篮球数int[] redBall = new int[33];//用于存储1-33的红球号码//需要随机生成6个再1-33之间不重复的数(算法)for(int i = 0;i<redBall.length;i++){redBall[i]=i+1;}//游戏开始,系统提示System.out.println("双色球游戏开始,good luck!");System.out.println("请问您是要机选还是手选号码(1:机选,2:手选)");Scanner input = new Scanner(System.in);Random r = new Random();boolean flag = true;while(flag){int isAuto = input.nextInt();switch(isAuto){case 1://机选computerSelection(redBall,userRedBall);//机选红球userBlueBall = r.nextInt(16)+1;//机选蓝球flag =false;break;case 2://手选System.out.println("请选择6个红球号码(1-33):");for(int i=0;i<userRedBall.length;i++){userRedBall[i] = input.nextInt();}System.out.println("请选择一个蓝球号码(1-16)");userBlueBall = input.nextInt();flag = false;break;default:System.out.println("请问您是要机选还是手选号码(1:机选,2:手选)");break;}}//系统随机生成号码//红球computerSelection(redBall,sysRedBall);//蓝球sysBlueBall = r.nextInt(16)+1;//统计结果://统计红球for(int i=0;i<userRedBall.length;i++){for(int j=0;j<sysRedBall.length-redCount;j++){if(userRedBall[i]==sysRedBall[j]){int temp = sysRedBall[j];sysRedBall[j] = sysRedBall[sysRedBall.length-1-redCount];sysRedBall[sysRedBall.length-1-redCount] = temp;redCount++;break;}}}//统计蓝球if(userBlueBall==sysBlueBall){blueCount=1;}//验证是否中奖if(blueCount==0 && redCount<=3){System.out.println("啥都没有中,那就再接再厉吧,加油!");}else if(blueCount==1 && redCount==3){System.out.println("中了六等奖,5块钱");}else if((blueCount==1 && redCount==3)||(blueCount==0 && redCount==4)){System.out.println("中了额五等奖,10块钱");}else if((blueCount==1 && redCount==4)||(blueCount==0 && redCount==5)){System.out.println("中了4等奖,200块钱");}else if(blueCount==1 && redCount==5){System.out.println("中了三等奖,3000块钱");}else if(blueCount==0 && redCount==6){System.out.println("中了二等奖");}else if(blueCount==1 && redCount==6){System.out.println("中了一等奖,500w");}else{System.out.println("系统有误,中奖无效");}//公布系统号码System.out.println("本期中奖红球号码为:");sort(sysRedBall);System.out.println(Arrays.toString(sysRedBall));System.out.println("本期中奖蓝球号码为:"+sysBlueBall);//公布用户号码System.out.println("您选择的红球号码为:");sort(userRedBall);System.out.println(Arrays.toString(userRedBall));System.out.println("您选择的蓝球号码为:"+userBlueBall);System.out.println("买双色球,成就你的豪车梦");}public static void sort(int[] ball){for(int i=0;i<ball.length-1;i++){for(int j=0;j<ball.length-1-i;j++){if(ball[j]>ball[j+1]){ball[j]=ball[j]+ball[j+1];ball[j+1]=ball[j]-ball[j+1];ball[j]=ball[j]-ball[j+1];}}}}public static void computerSelection(int[] redBall,int[] userRedBall){Random r = new Random();int index = -1;for(int i = 0;i<userRedBall.length;i++){index = r.nextInt(redBall.length-i);userRedBall[i] = redBall[index];int temp = redBall[index];redBall[index] = redBall[redBall.length-1-i];redBall[redBall.length-1-i] = temp;}}
}
模拟双色球案例
/**模拟双色球案例准备相关变量1.用户选择是机选还是手选2.接受用户选号(6红,1蓝)3.生成系统号码(6红,1蓝)3.比较系统号码和用户号码,记录个数5.验证是否中奖6.系统号码排序7.公布结果
*/
import java.util.Scanner;
import java.util.Arrays;
import java.util.Random;
public class doubleball{public static void main(String[] args){//定义相关的变量int[] userRedBall = new int[6];//用户选择的红球号码int[] sysRedBall = new int[6];//系统生成的红球号码int userBlueBall = 0;//用户选择的篮球int sysBlueBall = 0;//系统生成的篮球int redCount = 0;//记录用户选择正确的红球数int blueCount = 0;//记录用户选择正确的篮球数int[] redBall = new int[33];//用于存储1-33的红球号码//需要随机生成6个再1-33之间不重复的数(算法)for(int i = 0;i<redBall.length;i++){redBall[i]=i+1;}//游戏开始,系统提示System.out.println("双色球游戏开始,good luck!");System.out.println("请问您是要机选还是手选号码(1:机选,2:手选)");Scanner input = new Scanner(System.in);Random r = new Random();boolean flag = true;while(flag){int isAuto = input.nextInt();switch(isAuto){case 1://机选computerSelection(redBall,userRedBall);//机选红球userBlueBall = r.nextInt(16)+1;//机选蓝球flag =false;break;case 2://手选System.out.println("请选择6个红球号码(1-33):");for(int i=0;i<userRedBall.length;i++){userRedBall[i] = input.nextInt();}System.out.println("请选择一个蓝球号码(1-16)");userBlueBall = input.nextInt();flag = false;break;default:System.out.println("请问您是要机选还是手选号码(1:机选,2:手选)");break;}}//系统随机生成号码//红球computerSelection(redBall,sysRedBall);//蓝球sysBlueBall = r.nextInt(16)+1;//统计结果://统计红球for(int i=0;i<userRedBall.length;i++){for(int j=0;j<sysRedBall.length-redCount;j++){if(userRedBall[i]==sysRedBall[j]){int temp = sysRedBall[j];sysRedBall[j] = sysRedBall[sysRedBall.length-1-redCount];sysRedBall[sysRedBall.length-1-redCount] = temp;redCount++;break;}}}//统计蓝球if(userBlueBall==sysBlueBall){blueCount=1;}//验证是否中奖if(blueCount==0 && redCount<=3){System.out.println("啥都没有中,那就再接再厉吧,加油!");}else if(blueCount==1 && redCount==3){System.out.println("中了六等奖,5块钱");}else if((blueCount==1 && redCount==3)||(blueCount==0 && redCount==4)){System.out.println("中了额五等奖,10块钱");}else if((blueCount==1 && redCount==4)||(blueCount==0 && redCount==5)){System.out.println("中了4等奖,200块钱");}else if(blueCount==1 && redCount==5){System.out.println("中了三等奖,3000块钱");}else if(blueCount==0 && redCount==6){System.out.println("中了二等奖");}else if(blueCount==1 && redCount==6){System.out.println("中了一等奖,500w");}else{System.out.println("系统有误,中奖无效");}//公布系统号码System.out.println("本期中奖红球号码为:");sort(sysRedBall);System.out.println(Arrays.toString(sysRedBall));System.out.println("本期中奖蓝球号码为:"+sysBlueBall);//公布用户号码System.out.println("您选择的红球号码为:");sort(userRedBall);System.out.println(Arrays.toString(userRedBall));System.out.println("您选择的蓝球号码为:"+userBlueBall);System.out.println("买双色球,成就你的豪车梦");}public static void sort(int[] ball){for(int i=0;i<ball.length-1;i++){for(int j=0;j<ball.length-1-i;j++){if(ball[j]>ball[j+1]){ball[j]=ball[j]+ball[j+1];ball[j+1]=ball[j]-ball[j+1];ball[j]=ball[j]-ball[j+1];}}}}public static void computerSelection(int[] redBall,int[] userRedBall){Random r = new Random();int index = -1;for(int i = 0;i<userRedBall.length;i++){index = r.nextInt(redBall.length-i);userRedBall[i] = redBall[index];int temp = redBall[index];redBall[index] = redBall[redBall.length-1-i];redBall[redBall.length-1-i] = temp;}}
}
本文标签: 模拟双色球案例
版权声明:本文标题:模拟双色球案例 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/IT/1694639103a254377.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论