
package com.lzk.test;
import java.util.Random;
import java.util.Scanner;
public class test {
public static void main(String[] args) {
int[] numbers = useSelectNumber();
printNumber(numbers);
int[] luckyNumbers = luckyNumber();
printNumber(luckyNumbers);
compareNumber(numbers, luckyNumbers);
}
//设计一个方法,记录用户存放的数字,前六个是红球,最后一个shi是蓝球,返回一个数组
public static int[] useSelectNumber() {
int[] numbers = new int[7];
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < numbers.length - 1; i++) {
while (true) {
System.out.println("请输入第" + (i + 1) + "个红球:");
int num = scanner.nextInt();
//1~33
if (num < 1 || num > 33) {
System.out.println("输入有误,请重新输入!");
} else {
if (checkRepeat(numbers, num)) {
System.out.println("输入重复,请重新输入!");
} else {
numbers[i] = num;
break;
}
}
}
}
System.out.println("请输入第7个蓝球:");
int shi = scanner.nextInt();
//1~16
if (shi < 1 || shi > 16) {
System.out.println("输入有误,请重新输入!");
} else {
if (checkRepeat(numbers, shi)) {
System.out.println("输入重复,请重新输入!");
} else {
numbers[6] = shi;
}
}return numbers;
}
public static boolean checkRepeat ( int[] numbers, int num){
for (int i = 0; i < numbers.length; i++) {
if (numbers[i] == num) {
return true;
}
}
return false;
}public static void printNumber(int[] numbers) {
for (int i = 0; i < numbers.length; i++) {
System.out.print(numbers[i] + " ");
}
System.out.println();
}
//生成不会重复的7个数字作为中奖号码。前六个范围1~33,最后一个范围1~16
public static int[] luckyNumber() {
int[] lucky = new int[7];
Random random = new Random();
for (int i = 0; i < lucky.length - 1; i++) {
while (true) {
int number = random.nextInt(33) + 1;
if (!checkRepeat(lucky, number)) {//如果没有重复的数字
lucky[i] = number;
break;
}
}
lucky[6] = random.nextInt(16) + 1;
}return lucky;
}
//判断用户输入的与生成的数字有几个相同
public static void compareNumber(int[] numbers, int[] lucky) {
int rednumber = 0;
int bulenumber = 0;
for (int i = 0; i < numbers.length - 1; i++) {
for (int j = 0; j < lucky.length - 1; j++) {
if (numbers[i] == lucky[j]) {
rednumber++;
break;
}
}
}
if (numbers[6] == lucky[6]) {
bulenumber++;
}
System.out.println("共有" + rednumber + "个红球相同," + bulenumber + "个蓝球相同。");
if(rednumber == 6 && bulenumber==1){
System.out.println("恭喜你获得大奖1000万!");
}
else if(rednumber == 6&& bulenumber==0){
System.out.println("恭喜你获得大奖500万!");
}
else if(rednumber == 5&& bulenumber==1){
System.out.println("恭喜你获得大奖3000!");
}
else if(rednumber == 5&& bulenumber==0){
System.out.println("恭喜你获得大奖200!");
}
else if(rednumber == 4&& bulenumber==1){
System.out.println("恭喜你获得大奖200!");
}
else if(rednumber == 4&& bulenumber==0){
System.out.println("恭喜你获得大奖10!");
}
else if(rednumber == 3&& bulenumber==1){
System.out.println("恭喜你获得大奖10!");
}
else {
System.out.println("恭喜你获得大奖5!");
}
}
}