求助贴

package study;
import java.util.Arrays;
import java.util.Random;
public class shuangseqiu2 {
public static void main(String[] args) {
//声明一个二维数组长度为50W
int[][] ss=new int[500000][7];
for(int m=0;m<ss.length;m++) {
int[] s=new int[7];
Random ran=new Random();//产生随机数
//索引
int index=0;
while(true) {

			int h=ran.nextInt(33)+1;//随机一个红球
			boolean a=true;//假设没有重复的
			
			
			for(int i=0;i<index;i++) {
				if(s[i]==h) {
					a=false;
					break;
				}//判断是否有重复的
			}
			if(a) {
				s[index]=h;
				index++;
			}
			if(index==6) {
				break;
			}
		}
		//放入蓝球
		s[index]=ran.nextInt(16)+1;
		//针对S数组中前六位进行排序
		for(int i=1;i<s.length-1;i++) {
			for(int j=0;j<s.length-i-1;j++) {
				if(s[j]>s[j+1]) {
					s[j]=s[j]^s[j+1];
					s[j+1]=s[j]^s[j+1];
					s[j]=s[j]^s[j+1];
				}
			}
		}
		//讲一维数组放入二维数组中
		ss[m]=s;
	}
	//中奖号码
	int[] kk= {3,13,17,22,29,32,13};
	//统计中奖人数的变量
	int one=0;
	int two=0;
	int three=0;
	//一等奖:6+1  二等奖:6+0  三等奖:5+1
	for(int i=0;i<ss.length;i++) {
		//声明统计红球相同个数的变量
		int hi=0;
		//判断ss【i】这一注双色球红球相同个数与篮球相同个数
		//循环这一注双色球
		for(int a=0;a<ss[i].length-1;a++) {
			for(int b=0;b<kk.length-1;b++) {
				if(ss[i][a]==kk[b]) {
					hi++;
					break;
				}
			}
		}
		if(hi==6&&ss[i][6]==kk[6]) {
			one++;
		}else if(hi==6) {
			two++;
		}else if(hi==5&&ss[i][6]==kk[6]) {
			three++;
		}
	}
	System.out.println("一等奖人数:"+one+"人");
	System.out.println("二等奖人数:"+two+"人");
	System.out.println("三等奖人数:"+three+"人");
}

}

有没有好心人给解读下这个程序,刚入行,看不懂= =

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值