首页 > 代码库 > java数组实现买彩票(二个一维数组的比较思想)
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,c15 )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数组实现买彩票(二个一维数组的比较思想)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。