36选7随机摇号

import java.util.Random;

public class RandomDemo {
public static void main(String[] args) {
lottery();
}

/**
* 此方法判断是否存在重复内容
*
* @param temp
* 指的是已保存的数据
* @param num
* 指的是新生成的数据
* @return 如果存在返回false,不存在返回true(逻辑别扭)
*/
public static boolean isRepeat(int[] temp, int num) {
for (int x = 0; x < temp.length; x++) {
if (num == temp[x]) {
return false;
}
}
return true;
}

public static void lottery() {// 随机摇号
Random rand = new Random();
int[] data = new int[7];// 开辟一个7个元素的数组
int foot = 0; // 此数组的脚标
while (foot < 7) {// 不知道循环多少次可以保存完数据,while循环
int t = rand.nextInt(36) + 1;// 生成随机数[1,37)
if (isRepeat(data, t)) { // 返回的不重复数据
data[foot++] = t; // 保存
}
}
java.util.Arrays.sort(data); // 排序
for (int lottery : data) {
System.out.print(lottery + " ");
}
}
}

转载于:https://www.cnblogs.com/Lovemeifyoudare/p/10404103.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VB6.0实现彩票367选号程序,功能:生成14个过滤条件值保存DB,查询指定期的前X期开出的个数,七期随机选号法,统计每个号码出球规律,"随机下注数据,从定号码中遍历组合,在中号码列表中继续筛等。   程序主窗口中的TAB标签项卡实属不错,你可把它用在你的应用程序中。   注:统一起见,下标全部从1用起,0下标不用命名中的Sum这里统一为 个数 的意思,Total一般的数值变量,尽量统一使用Long型,因为Long型的取值范围大,而且速度快一些,只是内存多一点。   1000个数   Quick最快,循环只有500多次   Bucket第二,循环只有999次   过滤操作具体执行过程   一个条件一个条件的全部过滤所有   一次一注号码轮流进行一个条件一个条件的过滤,一次一个条件过滤全部,保留下来的进行下一轮过滤,那容错就几乎无法实现了,如果要实现容错机制的话,应该是一注号码要通过全部过滤条件,然后可利用容错,符合条件和容错就保留下来,鉴于保存所有号码的数组是二维的,那么就直接对保存的二维数组进行各个条件过滤,不可能每次用一个一维数组保存,再用这个一维来过滤。用一个一维数组来记录容错情况,也就是符合多少个条件,比如14个条件,设定了容错率为6,那么只要有8个或以上过滤条件符合,就保留下来。放到一个新的二维数组中奇号个数,0-7   参数:二维数组(),存放一注号码,7个   返回值:奇号的个数,一个Variant数组,里面分别是每注的奇数的个数   UBound(Num, 1) 第一维是注数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值