p69任务描述如下
感觉比写数据结构的c代码简单不少!!
希望10天入门吧!
package com.itheima.practice;
import java.util.Random;
import java.util.Scanner;
public class Demo5 {
public static void main(String[] args) {
//生成的随机幸运数
int[] Lucknumber=creatLuckNumber();
//用户输入的选号
int[] Usernumber=userInputNumer();
//判断中奖情况
judge(Lucknumber,Usernumber);
}
//生成幸运数字的方法
public static int[] creatLuckNumber(){
//定义一个动态数组,存储7个数字
int[] numbers=new int[7];
//遍历数组,生成7个幸运号码
//前六个为红色球(1-33)不能重复,最后一个蓝色球(1-16)
Random r =new Random();
for (int i = 0; i < 7; i++) {
while(true){
//生成一个1-33的随机数
int data=r.nextInt(33)+1;
boolean flag=true;
//检查是否重复
for (int j = 0; j < i; j++) {
if(numbers[i]==data){
flag=false;
break;
}
}
if(flag){
numbers[i]=data;
break;
}
}
}
//为蓝色球生成1-16的随机数
numbers[6]=r.nextInt(16)+1;
return numbers;
}
//用户输入选号的方法
public static int[] userInputNumer(){
int[] numbers=new int[7];
Scanner sc=new Scanner(System.in);
for (int i = 0; i < numbers.length-1; i++) {
System.out.println("请你输入第"+(i+1)+"红色号码(1-33)");
int data=sc.nextInt();
numbers[i]=data;
}
System.out.println("请你输入蓝色号码(1-16)");
numbers[6]=sc.nextInt();
return numbers;
}
public static void judge(int[] Lucknumber,int[] usernumber) {
int redHit=0;
int blueHit=0;
//判断红色球命中几个
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 6; j++) {
if(Lucknumber[j]==usernumber[i]){
redHit++;
break;
}
}
}
//判断最后一个是否命中
if(Lucknumber[6]==usernumber[6]) blueHit++;
//显示中奖详情
System.out.print("幸运号码是:");
printarray(Lucknumber);
System.out.println("你选的号码是:");
printarray(usernumber);
System.out.println("红色球中了"+redHit+"个,蓝色球中了"+blueHit+"个");
//判断中奖情况
if(blueHit==1&&redHit<3) System.out.println("恭喜你中了5元");
else if(blueHit==1&&redHit==3||blueHit==0&&redHit==4) System.out.println("恭喜你中了10元");
else if(blueHit==1&&redHit==4||blueHit==0&&redHit==5) System.out.println("恭喜你中了200元");
else if(blueHit==1&&redHit==5) System.out.println("恭喜你中了3000元");
else if(blueHit==0&&redHit==6) System.out.println("恭喜你中了500万元");
else if(blueHit==1&&redHit==6) System.out.println("恭喜你中了1000万元");
else System.out.println("很遗憾没有中奖");
}
public static void printarray(int[] arr) {
System.out.print("[");
for (int i = 0; i < arr.length; i++) {
System.out.print(i== arr.length?arr[i]:arr[i]+",");
}
System.out.println("]");
}
}
结果
没办法,我就是天选之人!!!