双色球模拟

利用多层for循环嵌套来实现双色球的选择问题
/* 双色球的规则

  • 1、从键盘上输入六个红球存储在容器当中

  • 2、球号的大小必须在1-32之间

  • 3、输入的球号不能和已经存在数组当中的球号存在

  • 4、蓝球 1-15之间

    • 随机产生六个红球存储在容器当中
  • 1、球号的大小必须在1-32之间

  • 2、输入的球号不能和已经存在数组当中的球号存在

  • 2、蓝球 1-15之间

  • 然后在比较输入红球和产生的红球相等的有哪些 已经蓝球是否相同

        public static void main(String[] args) {
     		Scanner sc=new Scanner(System.in);
     		int [] arr=new int[6];
     		x:for(int i=0;i<6;i++){
     			System.out.println("请输入第"+(i+1)+"红球号");
     			int a=sc.nextInt();
     			if(a>0 && a<33){
     			
     				arr[i]=a;
     				for(int j=0;j<i;j++){
     					int b=arr[j];
     					if(a==b){
     						System.out.println("输入号码与之前的号相同,重输");
     						i=i-1;
     						continue x;
     					}
     				}
     				
     			}
     			else{
     				System.out.println("输入的号不符合规则,重输");
     				i=i-1;
     			}
     		}
     		//开始输蓝球号
     		int [] arr1=new int[1];
     		System.out.println("请输入蓝球号码");
     		for(int k=0;k<1;k++){
     		int b=sc.nextInt();
     		if(b>0 && b<=15){
     			arr1[0]=b;
     		}
     		else{
     			System.out.println("蓝球号码不符规则,重输");
     			k=k-1;
     		}
     		}
     		System.out.println("输入号码为:");
     		
     			System.out.print("输的红色号码为"+Arrays.toString(arr) );
     			System.out.println("输的蓝色号码为"+Arrays.toString(arr1));
     		//开始电脑摇红球号。
     	
     
           int [] arr2=new int[6];
         	  for(int m=0;m<6;m++){
         		//System.out.println("产生的第"+(m+1)+"红球号为");
         	    double c=Math.random();
         	    c=c*32+1;
         	    int d=(int)c;
         	    arr2[m]=d;
         	    y:for(int n=0;n<m;n++){
         	    	int e=arr2[n];
         	    	if(e==d){
         	    		System.out.println("产生了重复数字,马上重新产生");
         	    		m=m-1;
         	    		continue y;
         	    	}
         	    	
         	    }
         	  
         	}
         	  //开产生蓝球号。
         	  int [] arr3=new int[1];
         	  //System.out.println("产生的蓝球号为");
         	  double f=Math.random();
         	  f=f*15+1;
         	  int g=(int)f;
         	  arr3[0]=g;
         	  System.out.print("产生的红色号码为"+Arrays.toString(arr2) );
         	  System.out.println("产生的蓝色号码为"+Arrays.toString(arr3));
         	  //开始判断获得奖的情况。
         	  int p=0;
         	  int q=0;
         	  for(int i=0;i<arr.length;i++){
         		  for(int m=0;m<arr2.length;m++){
         			  if(arr[i]==arr2[m]){
         				  p=p+1;
         			  }
         		  }
         	  }
         	  if(arr1[0]==arr3[0]){
         		  q=q+1;
         	  }
         	  if(p==6 && q==1){
         		  System.out.println("一等奖");
         	  }
         	  else if(p==6 && q==0){
         		  System.out.println("二等奖");
         	  }
         	  else if(p==5 && q==1){
         		  System.out.println("三等奖");
         	  }
         	  else if((p==5 && q==0) || (p==4 && q==1)){
         		  System.out.println("四等奖");
         	  }
         	  else if((p==4 && q==0) || (p==3 && q==1)){
         		  System.out.println("五等奖");
         	  }
         	  else if((p==2 && q==1) || (p==1 && q==1) || (p==0 && q==1)){
         		  System.out.println("六等奖");
         	  }
         	  else{
         		  System.out.println("未中奖");
         	  }
         	}
         }
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值