编写程序实现体彩大乐透机选5注
题目
编写程序实现体彩大乐透机选五注,把机选结果打印在控制台上,具体规则如下
- 大乐透由前区和后区构成
- 前区:从1-35中随机选出不重复的5个数
- 后区:从1-12中随机选出不重复的2个数
创建int型集合
//限定集合类型,基本数据类型为包装类
LinkedList<Integer> list=new LinkedList<Integer>();
循环输出前区
//循环前区
int[] random=new int[5];//定义存放这五个数的数组
for(int i=0;i<5;i++) {
random[i]=rand.nextInt(35) + 1;//取随机数for (int j = 0; j < i; j++) {while (random[i] == random[j]) {//如果重复,重新生成随机数random[i]=rand.nextInt(35) + 1;}}list.add(random[i]);//加到集合中
}
循环输出后区
//循环后区
int[] random1=new int[2];
for(int i=0;i<2;i++) {
//将随机数放到数组里面
random1[i]=rand.nextInt(12) + 1;
//去重for (int j = 0; j < i; j++) {while (random1[i] == random1[j]) {//如果重复,退回去重新生成随机数random1[i]=rand.nextInt(35) + 1;}}list.add(random1[i]);
}
完整代码
import java.util.LinkedList;
import java.util.Random;public class CaiPiao {public static void main(String[] args) {//1.从[1,35]中取出5个数//2.从[1,12]中取出2个数//3.每次打印五注Random rand=new Random();int count=0;//定义打印次数do {LinkedList<Integer> list=new LinkedList<Integer>();//循环前区int[] random=new int[5];for(int i=0;i<5;i++) {random[i]=rand.nextInt(35) + 1;for (int j = 0; j < i; j++) {while (random[i] == random[j]) {//如果重复,退回去重新生成随机数random[i]=rand.nextInt(35) + 1;}}list.add(random[i]);}//循环后区int[] random1=new int[2];for(int i=0;i<2;i++) {//将随机数放到数组里面random1[i]=rand.nextInt(12) + 1;//去重for (int j = 0; j < i; j++) {while (random1[i] == random1[j]) {//如果重复,退回去重新生成随机数random1[i]=rand.nextInt(35) + 1;}}list.add(random1[i]);}count++;System.out.println(list);}while(count<5);}
}