java编程 彩票问题

37选5首先让用户输入自己所选的5个号码,然后,程序生成5个随机数,调用一个方法,判断是否中奖。号码全中的是一等奖,中了四个的是二等奖,其它的是谢谢您支持福利事业。提示:... 37选5
首先让用户输入自己所选的5个号码,然后,程序生成5个随机数,调用一个方法,判断是否中奖。号码全中的是一等奖,中了四个的是二等奖,其它的是谢谢您支持福利事业。
提示:方法的参数是两个数组。
import java.util.*;
Random random1=new random();
int number=random1.nextInt(37)+1;
//random1.nextInt(upperbound-lowerbound+1)+lowerbound;
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
储利玉2i
2008-11-10 · TA获得超过1157个赞
知道小有建树答主
回答量:954
采纳率:0%
帮助的人:485万
展开全部
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Random;
public class Test {
//用户从控制台输入号码,注意:每个号码之间用“,”隔开
private static String[] enterNum() throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line = br.readLine();
String[] enter = line.split(",");
return enter;
}
//随机产生答案
private static String[] createAnswer() {
String[] answer = new String[5];
Random random = new Random();
for(int i=0; i<answer.length; i++) {
answer[i] = (random.nextInt(37) + 1) +"";
}
return answer;
}
//验证结果
private static String validator(String[] enter, String[] answer) {
int flag = 0;
for(int i=0; i<5; i++) {
for(int j=0; j<5; j++) {
if(enter[i].equals(answer[j])) flag++;
}
}
if(flag==4) return "二等奖";
if(flag==5) return "一等奖";
return "谢谢您支持福利事业";
}
//Main方法
public static void main(String[] args) throws IOException {
Test test = new Test();
String[] enter = test.enterNum();
String[] answer = test.createAnswer();
System.out.println(validator(enter, answer));
}
}
提示你一个小问题,就是怎么样保证 随机产生的答案 没有重复的,因为实际情况中,是不允许有重复的号码中奖的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式