java数组实现买彩票(二个一维数组的比较思想)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java数组实现买彩票(二个一维数组的比较思想)相关的知识,希望对你有一定的参考价值。
1 /** 2 设计一个程序,模拟从彩球池里随机抽取5个彩球(彩球池里一共有11个彩球,编号为1~11), 3 要求在控制台打印出这5个被取出来的彩球的编号(注意编号不能重复)。 4 思路: 5 1、创建一个int类型的一维数组balls,用来保存11个彩球的编号 6 2、创建一个boolean类型的一维数组flags,用来保存11个彩球的状态,默认全部为false 7 (比如:flags[0]=true,意味着编号等于balls[0]的这个彩球已经被取出来了) 8 3、去彩球池里取钱之前,先生成一个随机数,随机数的范围在0~10之间, 9 根据产生的随机数的值去balls数组里取对应位置的彩球编号 10 (比如: 11 a.产生的随机数使用index变量保存 12 b.如果index值为3,则先判断编号等于balls[3]的彩球有没有被取出来过 13 c.如果没有被取过,则取出该球,即在控制台输出该球的编号 14 d.如果已经被取过了,则重复步骤a,b,c 15 ) 16 4、需要取5次彩球(循环次数已知,可以使用for循环实现) 17 */ 18 public class BallsTest{ 19 public static void main(String[] args){ 20 int[] balls = {1,2,3,4,5,6,7,8,9,10,11}; 21 boolean[] flags = new boolean[11]; 22 int index; 23 for(int i=0;i<5;i++){ 24 do{ 25 index = (int)(Math.random()*11); 26 if(flags[index]==false){ 27 System.out.print(balls[index]+"\t"); 28 flags[index]=true; 29 break; 30 } 31 }while(flags[index]);//或者while(flags[index]==true) 32 } 33 } 34 }
以上是关于java数组实现买彩票(二个一维数组的比较思想)的主要内容,如果未能解决你的问题,请参考以下文章