偶尔买彩票,由于数字太多,从而选择也太多,买了几次,自己选的数字一个没中,用机器随机选嘛,也中了几次,但都是小钱。身边人都说,买彩票要自己选,机选绝对有作假的嫌疑,不会让我中大奖的。呵呵!我的目标可是1000W,所以,决定自己来实行机选。今天闲着没事,写了个彩票随即抽奖程序,以后,开始了我的自己给自己随机选号之旅,先把代码贴下,大家也可以用哦,放心,开源的,呵呵!
package com.lottery;
import java.util.ArrayList;
import java.util.List;
/**
* @description 彩票中奖程序,中奖率达90%
* @author t j a
*
*/
public class LotteryGenerator {
/**
* 包含所有红球的数组
*/
private static final int[] ALL_RED_NUMBER = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33};
/**
* 包含所有蓝球的数组
*/
private static final int[] ALL_BLUE_NUMBER = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
/**
* 数字之间分隔符
*/
private static final String SPLIT = " ";
/**
* 数组池(存放已抽出来的数字)
*/
private static List<Integer> numPool = new ArrayList<Integer>();
/**
* 生成所有的中奖号码
*/
public static void generateWinLotteryNum() {
System.out.println("6个红球号码分别是:"+printStrArr(generateNumber(6,ALL_RED_NUMBER)));
System.out.println("1个蓝球号码分别是:"+generateNumber(1,ALL_BLUE_NUMBER));
}
/**
* @description 生成指定长度(length)的随即中奖号码
* @param length
* @return
*/
private static String generateNumber(int length,int[] numberArr) {
if(length<=0) length = 1;
StringBuffer sb = new StringBuffer();
for(int i = 0;i<length;i++) {
int pos = (int)(Math.random()*numberArr.length);
if(isInNumPool(numberArr[pos])) {
i--;
continue;
}
numPool.add(numberArr[pos]);
sb.append(numberArr[pos]);
sb.append(SPLIT);
}
numPool.clear(); //清空数字池
return sb.toString();
}
/**
* @description 判断生成的数字是否已经在数字池里了(判断数字是否已经存在了)
* @param number
* @return
*/
private static boolean isInNumPool(int number) {
if(numPool.contains(number)) {
return true;
} else {
return false;
}
}
/**
* @description 对纯数字字符串进行排序(选择排序)
* @param strArr 字符串数字,以" "作为分割符
* @return
*/
private static String[] sort(String _sortStr) {
String[] strArr = _sortStr.split(SPLIT);
String tempStr;
for(int i = 0;i<strArr.length;i++) {
String minStr = strArr[i];
for(int j = i+1;j<strArr.length;j++) {
if(Integer.parseInt(strArr[j])<Integer.parseInt(minStr)) {
tempStr = minStr;
minStr = strArr[j];
strArr[j] = tempStr;
}
strArr[i] = minStr;
}
}
return strArr;
}
/**
* @description 输出排了序的字符串
* @param _sortStr
* @return
*/
private static String printStrArr(String _sortStr) {
String[] strArr = sort(_sortStr);
StringBuffer sb = new StringBuffer();
for(String str:strArr){
sb.append(str);
sb.append(SPLIT);
}
return sb.toString();
}
public static void main(String[] args) {
LotteryGenerator.generateWinLotteryNum();
System.out.println("哎呀,去买吧,不中砸死我!");
}
}
分享到:
相关推荐
双色球通用号码更新器 注意事项: 1.绿色版无需安装。 2.运行前请修改app.config文件的数据库路径。路径中不要包含中文!!! 3.双击“LotteryCaptureTool.exe”运行程序。 详细:...
根据提供的文件内容,我们可以分析并总结出关于双色球中奖号码的相关知识点。这份文档包含了从2003001期至2003069期的双色球中奖号码,每一行代表一个期次的中奖号码,其中前六个数字是红球号码(1-33之间),最后一...
JAVA双色球中奖代码
历年双色球中奖号码从2003年到2023年 Excel数据 mysql数据库数据文件
此文件为python源代码文件,严格根据福彩双色球规则,包括选号、随机开奖、判断中奖三个环节,并把中奖号码用特殊颜色高亮显示(适用于pycharm编辑器或Linux系统),并且提示用户中了几等奖。选号过程对于所选号码的...
红蓝双色球随机中奖案例
开发者希望用户在使用过程中能够感受到乐趣,同时提醒如果中奖了要表达感谢,暗示这个摇号器的结果具有一定的随机性和真实性。通过描述中的“私信”和“联系方式”,我们可以推断开发者可能提供了售后服务或技术支持...
大学程序实例设计课程的小作业——双色球彩票模拟中奖系统。很精心的在写,送给一切需要的新手们(一起成长)(应该是有能借鉴的内容)(有追加注释)。资源分算是对我的一丢丢补偿吧,我也想去下载别人的代码。
本项目“C++实现双色球随机生成器及兑奖”旨在利用C++的强大功能,创建一个能够模拟双色球彩票的随机生成器,并具备数据处理功能,如导入、导出和中奖情况的分析。下面将详细阐述这个项目中的关键知识点。 首先,...
- 对比双色球历史中奖数据,可能涉及对原始数据进行分析,找出特定模式或统计信息,例如最常出现的号码、连续未出现的号码等。 - 在新创建的工作表中添加这些分析结果,可以通过遍历原始数据,计算统计信息,并将...
【标题】"福彩双色球选号器源代码"涉及的核心知识点主要集中在彩票号码生成算法、C#编程语言以及彩票游戏规则的理解上。这个项目是一个软件应用,它使用C#来设计并实现了自动选择双色球彩票号码的功能,旨在帮助用户...
从官网抓取往期双色球中奖号码,用于分析帮助选号,哈哈_LotteryNumberSelect
这个压缩包文件“双色球历年中奖数据及机选源码”显然包含了一个软件项目,用于分析双色球彩票的历史中奖数据,并提供随机选择号码的功能,即“机选”。该项目是用Visual Studio 2005(VS2005)开发的,这是一种由...
该资源是一个基于jQuery和CSS3技术开发的双色球抽奖特效源码,旨在模拟真实世界中的扭蛋机或开奖过程,为网站或应用增添互动性和趣味性。在深入探讨这个源码之前,我们先理解一下jQuery和CSS3这两个关键技术。 ...
在本文中,我们将深入探讨如何使用C#编程语言来实现一个双色球摇奖器程序。双色球摇奖器是一种常见的彩票游戏,其规则包括6个红球和1个篮球,红球范围通常为1到33,篮球范围为1到16。在这个项目中,我们将关注如何...
双色球 对应信息数据库版本 包括2003002期到2021117期,共2644条数据 其中包括开奖时间 期数 号码 红1 红2 红3 红4 红5 红6 蓝 开机号 和值 和值特征 奇偶比 大小比 奇偶形态 跨度
双色球选个号码出中型旋转矩阵旋转矩阵公式.pdf 该资源提供了一个关于双色球选个号码的中型旋转矩阵旋转矩阵公式,旨在帮助用户快速生成双色球号码。该公式基于旋转矩阵理论,通过旋转矩阵的计算,生成了多种可能的...
双色球开奖,数据可自动更新,利用excel vba bianxie
本压缩包中的“双色球分析”文件很可能包含了一个程序或脚本,旨在帮助彩民通过统计分析,找出历史上出现频率较高的红球和蓝球号码。 这个程序可能使用了数据分析技术,如频数统计、频率分布、热力图等方法,来挖掘...
基于java+mysql实现双色球购买及抽奖程序...要求必须声明一个购彩人的类,用自己的姓名、学号和出生日期实例化出这位购彩人。 将所有代码和运行结果截图,数据库所有表中的内容截图,所有源代码(*iava)也要提交上传