%双色球历史数据分析
%
clc;clear;
[ssqdata,~]=xlsread('ssq.xls'); %从excel中读取数据
[col,~]=size(ssqdata); %获取行数据
RedId=ssqdata(:,3:9); %读取红球和篮球数据
idsum7=tabulate(RedId(:,7)); %统计个数
Redmax=max(idsum7(:,2)); %统计数最多
Redmin=min(idsum7(:,2)); %统计数最小
Red01=Redmax-Redmin; %最大最小波动差
Red=[col,Redmin,Redmax,Red01];
disp(Red);
RedSum=10; %玩的周期数
step=10; %周期限定个数
RedMean=(RedSum+1)/2; %确定均值
LowStar=1; %确定初始值
RedData=zeros(6,1); %红球数据
idsum=zeros(RedSum*col*6,2); %记录中奖球个数
ijk=1;
for ii=1:RedSum
for jj=1:col
LowStar= 1+rem(jj,step); %确定循环数
RedOring=sort(RedId(jj,1:6)); %获取红球数据
if jj<=32
bluenum=randperm(16); %随机生成一组没有重复的整数
for kk=1:LowStar
rednum=randperm(32); %随机生成一组没有重复的整数
RedData=[rednum(3),rednum(6),rednum(9),rednum(12),rednum(15),rednum(18)];%随机挑选
RedData=sort(RedData); %排序
id=0;
for nn=1:6
if RedOring(nn)==RedData(nn)
id=id+1; %统计相同的个数
end
end
ijk=ijk+1;
if bluenum(7)==RedId(jj,7)
id=id+1; %统计相同的个数
idsum(ijk,2)=1;
end
if id==7
disp('中奖了');
end
idsum(ijk,1)=id;
end
else
if LowStar==1
BlueData=RedId(jj-32:jj,7);
for mm=1:step
if find(BlueData(mm,1)~= BlueData(32-step:32,1))
BlueData1= BlueData(mm,1);
end
rednum=randperm(32); %随机生成一组没有重复的整数
RedData=[rednum(3),rednum(6),rednum(9),rednum(12),rednum(15),rednum(18)];%随机挑选
RedData=sort(RedData); %排序
id=0;
for nn=1:6
if RedOring(nn)==RedData(nn)
id=id+1; %统计相同的个数
end
end
ijk=ijk+1;
if BlueData1==RedId(jj,7)
id=id+1; %统计相同的个数
idsum(ijk,2)=1;
end
if id==7
disp('中奖了');
end
idsum(ijk,1)=id;
end
end
end
end
end
[id1,~]=size(find(idsum==6));
[id2,~]=size(find(idsum==5));
id6=5*sum(idsum(:,2));
mansum=id1*500000+id2*3000+id6*5;
disp(unique(idsum'));
disp(['一等奖个数=',num2str(id1)]);
disp(['三等奖个数=',num2str(id2)]);
disp(['六等奖个数=',num2str(id6)]);
disp(['投入总资金=',num2str(ijk*2)]);
disp(['总奖金=',num2str(mansum)]);
disp(['差额=',num2str(mansum-ijk*2)]);
disp(['投入的时间(年)=',num2str(ijk*2/360)]);
输出结果:
2172 120 151 31
0
1
2
3
4
5
一等奖个数=0
三等奖个数=1
六等奖个数=6420
投入总资金=46202
总奖金=35100
差额=-11102
投入的时间(年)=128.3389
作者:LiW