Java-随机生成双色球(彩票)

玩法规则:“双色球”每注投注号码由 6 个红色球号码和 1 个蓝色球号码组成。红色球号码从 1—33 中选择,蓝色球号码从 1—16 中选择。球的数字匹配数量和颜色决定了是否中奖,具体中奖规则:
“双色球”每注投注号码由 6 个红色球号码和 1 个蓝色球号码
组成。红色球号码从 1—33 中选择,蓝色球号码从 1—16 中选择。
球的数字匹配数量和颜色决定了是否中奖,具体中奖规则:
一等奖:7个号码相符(6个红色球号码和1个蓝色球号码)(红色球号码顺序不限,下同);
二等奖:6个红色球号码相符;
三等奖:5个红色球号码和1个蓝色球号码相符;
四等奖:5个红色球号码或4个红色球号码和1个蓝色球号码相符;
五等奖:4个红色球号码或3个红色球号码和1个蓝色球号码相符;
六等奖:1个蓝色球号码相符(有无红色球号码相符均可)。


/*
 * 分析:利用数组生成随机数,通过用户输入后,对比确认得到几等奖
 * * 注意:
 * *利用Math.randon()生成随机数,使用for循环为数组逐一赋值
 * *未赋值的数组元素默认为0
 * *使用if,switch分支判断,for为循环
 */
import java.util.Scanner;
public class task17 {
     

	public static void main(String[] args) {
     
		Scanner input = new Scanner(System.in);
		//定义一个元素为6的数组
		int[] redNums = new int[6];
		//定义一个元素为1的数组
		int[] blueNums = new int[1];
		//定义用户输入的6个为蓝色球号数
		int[] inputRed = new int[6];
		//定义用户输入的1个为红色球号数
		int[] inputBlue = new int[1];
		//使用两个数字计算红蓝匹配数
		int tempRed = 0,tempBlue = 0;
		
		//使用Math.randon()生成0.0-1.0之间的double类型的数字
		for (int i=0;i<redNums.length;i++){
     
	        redNums[i]=(int)(Math.random()*32+1);
	    }
		//生成蓝色随机数
		blueNums[0] = (int)(Math.random()*15+1);
		
		/*
		// 作弊方法
		System.out.println("开挂码****************************************************");
		//打印红蓝球号数
		for(int i=0;i
		
		//提升用户输入蓝色球的6个数
		for(int i=1;i<=inputRed.length;i++) {
     
			System.out.println("请你输入第" + i + "个红色球的号数(1-33之间):");
			inputRed[i-1] = input.nextInt();
		}
		//提升用户输入蓝色球的1个数
		System.out.println("请你输入第1个蓝色球的号数(1-16之间):");
		inputBlue[0] = input.nextInt();
		//红色球匹配数计算
		for(int i=0;i<inputRed.length;i++) {
     
			if(redNums[i]==inputRed[i]) {
     
				tempRed++;
			}
		}
		//蓝色球匹配数计算
		if(blueNums[0]==inputBlue[0]) {
     
			tempBlue++;
		}
		//判断符合中奖条件与否
		switch(tempRed) {
     
		case 6:
			if(tempBlue==1) {
     
				System.out.println("选6+1中6+1,恭喜您获得一等奖!");
			}else {
     
				System.out.println("选6+0中6+0,恭喜您获得二等奖!");
			}
			break;
			
		case 5:
			if(tempBlue==1) {
     
				System.out.println("选5+1中5+1,恭喜您获得三等奖!");
			}else {
     
				System.out.println("选5+0中+0,恭喜您获得四等奖!");
			}
			break;
			
		case 4:
			if(tempBlue==1) {
     
				System.out.println("选4+1中4+1,恭喜您获得四等奖!");
			}else {
     
				System.out.println("选4+0中4+0,恭喜您获得五等奖!");
			}
			break;
			
		case 3:
			if(tempBlue==1) {
     
				System.out.println("选3+1中3+1,恭喜您获得五等奖!");
			}else {
     
				System.out.println("你中3+0,很遗憾您没有获奖");
			}
			break;
			
		case 2:
			if(tempBlue==1) {
     
				System.out.println("选2+1中2+1,恭喜您获得六等奖!");
			}else {
     
				System.out.println("你中2+0,很遗憾您没有获奖");
			}
			break;
			
		case 1:
			if(tempBlue==1) {
     
				System.out.println("选1+1中1+1,恭喜您获得六等奖!");
			}else {
     
				System.out.println("你中1+0,很遗憾您没有获奖");
			}
			break;
			
		case 0:
			if(tempBlue==1) {
     
				System.out.println("选0+1中0+1,恭喜您获得六等奖!");
			}else {
     
				System.out.println("你中0+0,很遗憾您没有获奖");
			}
			break;
		default:System.out.println("数据错误!");break;
		}
	}

}

(新手刚刚开始学Java,有错误或更好的解决方法欢迎私信!!)

你可能感兴趣的:(问题类,java)