写一个彩票程序
30选7 随机(1~30中间)生成7个随机数,注意不能重复然后输入7个数,对比7个数是否与随机数有相同的,如果有显示“中了几个号”
如果中了7个号,显示一等奖
如果中了6个号,显示二等奖
如果中了5个号,显示三等奖.
package com.bwf.cn;
import java.util.Arrays;
import java.util.Scanner;
public class Test04_Demo {
static Scanner sc = new Scanner(System.in);
/**
* 30选7 随机(1~30中间)生成7个随机数,注意不能重复然后输入7个数,对比7个数是否与随机数有相同的,如果有显示“中了几个号”
如果中了7个号,显示一等奖
如果中了6个号,显示二等奖
如果中了5个号,显示三等奖.
*/
public static void main(String[] args) {
//中奖号码
int[] code = getCode();
System.out.println(Arrays.toString(code));
//手动输入七个号码
int[] shoudongCode = getshoudaoCode();
int count = 0;
for (int i = 0; i < code.length; i++) {
for (int j = 0; j < shoudongCode.length; j++) {
if(code[i] == shoudongCode[j]){
count++;
}
}
}
System.out.println("中奖号码个数:"+count);
}
public static int[] getCode(){
int[] arr =new int[7];
for (int i = 0; i < arr.length; i++) {
arr[i] = (int) (Math.random()*30+1);
for (int j = 0; j < i; j++) {
if(arr[i] == arr[j]){
i--;
break;
}
}
}
return arr;
}
public static int[] getshoudaoCode(){
int[] arr =new int[7];
for (int i = 0; i < arr.length; i++) {
System.out.println("请输入第"+(i+1)+"个号码(1~30之间):");
arr[i] = sc.nextInt();
if(arr[i] > 30 || arr[i] < 1){
System.out.println("号码范围不对");
i--;
continue;
}
for (int j = 0; j < i; j++) {
if(arr[i] == arr[j]){
System.out.println("号码重复,请重新输入");
i--;
break;
}
}
}
return arr;
}
}