双色球预测算法,居于 EXCEL 宏的推算程序

预测原理:

每一注彩票的随机性,跟大自然中的随机事件或随机过程是一样的。每一天的随机性事件,在第二天看来都是已经发生了的,并且是固定的。

如果把彩票抽奖当天当作是第二天,那么彩票的号码是已经定下来的,而且无法更改。

如果每天的分分秒秒,无时无刻,都在随机出现一注彩票,那么当天一整天出现的所有彩票中,有一注彩票出现了很多次,即相同号码的一注彩票

出现了很多次,可以理解这就是那天最应该出现的彩票,因为它是当天出现概率最高的一注号码。以下以双色球为例,用EXCEL实现的方法。

使用EXCEL实现预测步骤:

1.选中50000个单元格,每个单元格随机出现一个红球号码,然后统计 1 到 33 个红球号码的出现个数,并且从大到小排列。

每个单元格填入:=1+INT(RAND()*33) 表示该单元格自动产生 1 到 33 之间的随机一个号码。

第N列填上 1 到 33 的序列号;

第O列的第一个单元格填入:=COUNTIF($B1:K$5000,N1) 表示统计50000号码里各个号码数量

2.取数量最多的前3红球个号码、数量最少的后3红色个号码和最中间的5个红球号码,通过编写宏的办法保存到EXCEL的另一列里。

宏程序如下:

Sub Macro1()

'

' Macro1 Macro

'

' 快捷键: Ctrl+a

'

Range("N1:O33").Select

Selection.Copy

Range("Q1").Select

Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _

xlNone, SkipBlanks:=False, Transpose:=False

Application.CutCopyMode = False

ActiveWorkbook.Worksheets("Sheet4").Sort.SortFields.Clear

ActiveWorkbook.Worksheets("Sheet4").Sort.SortFields.Add Key:=Range("R1:R35") _

, SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("Sheet4").Sort

.SetRange Range("Q1:R33")

.Header = xlGuess

.MatchCase = False

.Orientation = xlTopToBottom

.SortMethod = xlPinYin

.Apply

End With

Range("Q1:Q3").Select

Selection.Copy

Range("U1").Select

ActiveSheet.Paste

Range("Q31:Q33").Select

Application.CutCopyMode = False

Selection.Copy

Range("U4").Select

ActiveSheet.Paste

Range("Q16:Q20").Select

Application.CutCopyMode = False

Selection.Copy

Range("U7").Select

ActiveSheet.Paste

Range("U1:U11").Select

Application.CutCopyMode = False

Selection.Copy

Range("U12").Select

Selection.Insert Shift:=xlDown

End Sub

当你每按一次 CTRL + a , 宏就运行一次,右边 第U列 的结果,就会把最新的预测数据插入,最顶端的11个格,以前的数据则下移。这样第 U 列就会产生很多每时每刻预测出来的红色球号码。

3.编写宏程序,不断重复1和2两个步骤,也把最前3号码 + 最后的3个号码 + 最中间的5个号码,插入加在刚才已有的11个号码的前面,并保持同列。

再编写宏程序,让 EXCEL 自动预测自动统计自动增加到第 U 列累积。

Sub Macro4()

'

' Macro4 Macro

'

' 快捷键: Ctrl+d

'

|-------------------------------------|
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |
| Application.Run "双色球研究.xlsx!Macro1" |

End Sub

当你每按一次 CTRL + d , 宏 Sub Macro1() 就运行20次 , 第 U 列就多了 20 组采集数据。

4.编写宏程序,重复1、2和3,那么到最后停下来的时候,就可以得到一列当天概率最高的号码。再统计 1 到 33 个号码,各号码出现的次数,

并按号码出现的次数从多到少排列起来。

再编写宏程序,让 EXCEL 自动预测自动统计自动增加到第 U 列累积。直到人为停止。

Sub Macro5()

'

' Macro5 Macro

'

' 快捷键: Ctrl+e

'

|-------------------------------------|
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |
| Application.Run "双色球研究.xlsx!Macro4" |

End Sub

当你每按一次 CTRL + e , 宏 Sub Macro4() 就运行20次 , 而宏 Sub Macro1() 就运行 20X20次,第 U 列就多了 400 组采集数据。以此类推,可以采集100万组数据或更多。

5.在最后排列的从多到少的号码当中,选取出现次数最多的前3个号码和出现次数最少的后3个号码,就得到了当天的双色球6个红色号码了。

当停下来了之后,对100万采集到的数据进行统计,在第 P 列写入公式=COUNTIF($U1:U$1000000,N1)

可以得到从1 到 33 各球的所有次数,然后按次数从多到少排列。

选取出现次数最多的前3个号码和出现次数最少的后3个号码

就得到了当天的双色球6个红色号码了。

相关推荐
乳酸菌坚果2 小时前
Excel--DATEDIF函数的用法及参数含义
excel
阳光阿盖尔17 小时前
EasyExcel的基本使用——Java导入Excel数据
java·开发语言·excel
聆听HJ21 小时前
java 解析excel
java·开发语言·excel
elina80131 天前
安卓实现导入Excel文件
android·excel
Eiceblue1 天前
Python 复制Excel 中的行、列、单元格
开发语言·python·excel
cc蒲公英1 天前
Vue2+vue-office/excel 实现在线加载Excel文件预览
前端·vue.js·excel
徐同保2 天前
vue 在线预览word和excel
vue.js·word·excel
kaixin_啊啊2 天前
计算机二级office操作技巧——Excel篇
excel
~在杰难逃~2 天前
关于订单信息的Excel数据分析报告
笔记·数据分析·excel·数据分析报告
生产队队长3 天前
SpringBoot2:web开发常用功能实现及原理解析-整合EasyExcel实现Excel导入导出功能
spring boot·excel