package com.itheima;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class LuckynumberDemo {
public static void main(String[] args) {
int[] sysRedBallNum = new int[6]; // 系统红球数组
int sysBuleBallNum; // 系统蓝球
Random r = new Random(); // 随机数对象
int index = 0; // 数组的索引,控制循环次数
// 获取红球数组
while(true) {
// 获取一个1 ~ 33 之间的随机数
int num = r.nextInt(33) + 1;
// 定义一个标记, 用来标记数组中是否有num这个随机数,有就为false 没有就为true
boolean flag = true;
// 在向数组中存数据之前,首先要保证数组中没有num这个随机数 , 所以先做一个判断, 并使用一个控制条件来标记数组中是否有这个随机数
for (int i = 0; i < sysRedBallNum.length; i++) {
if(num == sysRedBallNum[i]) {
flag = false;
}
}
// 向数组中存数据 , 要满足两个条件 , 第一个判断标记为true(也就是数组中没有num这个随机数),第二个index小于6
if(flag && index < 6) {
sysRedBallNum[index] = num;
index ++;
}
// 循环的出口
if(index >= 6) {
break;
}
}
// 获取蓝球
sysBuleBallNum = r.nextInt(16) + 1;
// 用户输入6个红球
int[] userRedBallNum = new int[6];
Scanner sc = new Scanner(System.in);
System.out.println("请输入6个红球号码");
for (int i = 0; i < userRedBallNum.length; i++) {
userRedBallNum[i] = sc.nextInt();
}
System.out.println("请输入1个蓝球号码");
// 用户输入一个蓝球
int userBuleBallNum = sc.nextInt();
// 打印用户输入的彩票号码
System.out.print("用户输入的彩票号码为: 红球");
for (int i = 0; i < userRedBallNum.length; i++) {
System.out.print(userRedBallNum[i] + " ");
}
System.out.println("蓝球" + userBuleBallNum);
// 统计中奖个数
int buleBallCount = sysBuleBallNum == userBuleBallNum ? 1 : 0;
int redBallCount = 0;
// 循环嵌套遍历两个数组,获取中奖个数
for (int i = 0; i < userRedBallNum.length; i++) {
for (int j = 0; j < sysRedBallNum.length; j++) {
if(userRedBallNum[i] == sysRedBallNum[j]) {
redBallCount++;
}
}
}
// 打印中奖信息
if(redBallCount == 6 && buleBallCount == 1) {
System.out.println("走狗屎运了,您中了一等奖!500万!!!");
}else if(redBallCount == 5 && buleBallCount == 1) {
System.out.println("哇~太厉害了,您中了二等奖");
}else if(redBallCount == 4 || (redBallCount == 4 && buleBallCount == 1)) {
System.out.println("恭喜您,您中了三等奖");
}else if(redBallCount == 1 && buleBallCount == 1) {
System.out.println("四等奖也不错哦!~");
}else{
System.out.println("很遗憾,没有中奖,再接再厉吧~");
}
Arrays.sort(sysRedBallNum);
// 打印本期中奖号码
System.out.print("本期中奖号码为: 红球");
for (int i = 0; i < sysRedBallNum.length; i++) {
System.out.print(sysRedBallNum[i] + " ");
}
System.out.println("蓝球" + sysBuleBallNum);
}
}
|
|