注册 登录
编程论坛 Delphi论坛

谁会做双色球号码全排的算法,给个指导!

mmyl 发布于 2012-07-13 11:26, 779 次点击
红球1-33,蓝球1-16,共1700多万种组合,用哪个算法能快一些把这1700多万个号码排列出来存到数据库中。
3 回复
#2
mmyl2012-07-17 08:03
这个论坛热心人真少
#3
stenger2012-07-18 15:28
procedure mThread.Execute;
  var
  R1,R2,R3,R4,R5,R6:integer;
  B1:integer;
  Numbers:string;
  Myfile:textfile;
const rn=33; bn=16;
begin
Allbate :=0;
  assignfile(Myfile,'D:/caopiao.txt');
  if not Fileexists('D:/caopiao.txt') then
    rewrite(Myfile)
    else
    begin
      DeleteFile('D:/caopiao.txt');
       rewrite(Myfile);
    end;
  for R1:=1 to rn do
    begin
     for R2:=R1+1 to rn do
      begin
        for R3:=R2+1 to rn do
          begin
            for R4:=R3+1 to rn do
              begin
                for R5 := R4+1 to rn do
                  begin
                    for R6:=R5+1 to rn do
                      begin
                          for B1 :=1 to Bn do
                          begin
                            Numbers :=inttostr(R1) +',' +inttostr(R2) +','+inttostr(R3) +','+inttostr(R4);
                            Numbers :=  Numbers+ ','+  inttostr(R5)+','+inttostr(R6);
                            Numbers := Numbers +'|' + inttostr(B1);
                             Allbate:= Allbate + 1;
                             writeln(myfile,Numbers) ;
                              Synchronize(updateform);
                          end ;
                      end;
                  end;

              end;
          end
         end;
      end;
    closefile(myfile);
end;

自己写在一个线程里面的  你慢慢看吧
#4
鹄哥2013-03-04 00:50
谢谢了,找很久这个了,真心感谢
1