投注号码由6个红球号码和1个蓝球号码组成。
系统随机生成中奖号码
红色球号码从1~33中选择
蓝色球号码从1~16中选择
package com.zhibo.highText;
import java.util.Random;
import java.util.Scanner;
public class Text5 {
public static void main(String[] args) {
int arr[] = new int[7];
int newArr[] = new int[7];
randomNumber(arr);
System.out.println("***************************");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
System.out.println();
System.out.println("***************************");
userInputNumber(newArr);
int redCount = getRedCount(arr,newArr);
int blueCount = getBlueCount(arr,newArr);
System.out.println("红球的数量"+redCount);
System.out.println("篮球的数量"+blueCount);
getAward(redCount,blueCount);
}
//生成随机双色球号码
public static void randomNumber(int arr[]){
//生成红色双色球(不重复)
Random r = new Random();
for (int i = 0; i < arr.length; ) {
int redNumber = r.nextInt(33)+1;
if(contains(redNumber,arr)){
arr[i] = redNumber;
i++;
}
}
//生成绿色双色球
arr[arr.length-1] = r.nextInt(16)+1;
}
//判断该数字是否在数组中有重复
public static boolean contains(int redNumber,int arr[]){
for (int i = 0; i < arr.length; i++) {
if(arr[i] == redNumber){
return false;
}
}
return true;
}
//用户输入,放入数组
public static void userInputNumber(int arr[]) {
Scanner sc = new Scanner(System.in);
for (int i = 0; i < arr.length; ) {
if (i < arr.length - 1) {
System.out.println("请输入第" + (i + 1) + "个红球的号码");
int redNumber = sc.nextInt();
if (redNumber >= 1 && redNumber <= 33) {
if (contains(redNumber, arr)) {
arr[i] = redNumber;
i++;
} else {
System.out.println("输入数字重复,请重新输入");
}
} else {
System.out.println("数字超出范围,请重新输入");
}
} else {
System.out.println("请输入蓝球的号码");
int blueNumber = sc.nextInt();
if (blueNumber >= 1 && blueNumber <= 16) {
arr[arr.length - 1] = blueNumber;
i++;
} else {
System.out.println("号码超出范围,请重新输入");
}
}
}
}
//统计红球的数量
public static int getRedCount(int arr[],int newArr[]){
int redCount = 0;
for (int i = 0; i < newArr.length-1; i++) {
for (int j = 0; j < arr.length-1; j++) {
if(arr[j] == newArr[i]){
redCount++;
break;
}
}
}
return redCount;
}
//统计蓝球的数量
public static int getBlueCount(int arr[],int newArr[]){
int blueCount = 0;
if(arr[arr.length-1] == newArr[newArr.length-1]){
blueCount++;
}
return blueCount;
}
//获得奖励
public static void getAward(int redCount,int blueCount){
if(redCount == 6 && blueCount == 1){
System.out.println("恭喜你,获得1000万!");
} else if (redCount == 6 && blueCount == 0) {
System.out.println("恭喜你,获得500万!");
}else if (redCount == 5 && blueCount == 1) {
System.out.println("恭喜你,获得3000元!");
}else if (redCount == 5 && blueCount == 0) {
System.out.println("恭喜你,获得200元!");
}else if (redCount == 4 && blueCount == 1) {
System.out.println("恭喜你,获得200元!");
}else if (redCount == 4 && blueCount == 0) {
System.out.println("恭喜你,获得10元!");
}else if (redCount == 3 && blueCount == 1) {
System.out.println("恭喜你,获得10元!");
}else if (redCount == 2 && blueCount == 1) {
System.out.println("恭喜你,获得5元!");
}else if (redCount == 1 && blueCount == 1) {
System.out.println("恭喜你,获得5元!");
}else if (redCount == 0 && blueCount == 1) {
System.out.println("恭喜你,获得5元!");
}else{
System.out.println("谢谢参与");
}
}
}
自学编程的小白,第一次发帖子,代码可能不是很简洁,多多指教。