zoukankan      html  css  js  c++  java
  • 随机产生不重复数字

    http://www.cnblogs.com/28088191/archive/2008/12/25/1362519.html

    下面是一个在14个数据产生10个不重复的随机数

    -----------------------------------------------

    procedure TForm1.Button1Click(Sender: TObject);
    var   a:array[1..14]of   integer;//14个数
              b:array[1..10]of   integer;//结果
              c:array[1..14]of     boolean;//标志,默认false
              i,temp:integer;
      begin
              for   i:=1   to   14   DO
                begin
                  a[i]:=i;
                  c[i]:=false;
                end;
              for   i:=1   to   10   do
                  begin
                      temp:=Random(14)+1;
                      while   c[temp]=true   do
                          begin
                              temp:=Random(14)+1;
                          end;
                      b[i]:=a[temp];
                      c[temp]:=true;
                  end;
              ListBox1.Clear;
              for   i:=1   to   10   do
              ListBox1.Items.Add(IntToStr(b[i]));

      end;

    procedure TForm1.Button1Click(Sender: TObject);
    var rarr:array[1..14]of integer;//结果
    farr:array[1..14]of boolean;//标志,默认false
    i,k:integer;
    begin
    for k:=1 to 14 DO
    begin
    farr[k]:=false;
    end;
    for k:=1 to 14 do
    begin
    i:=Random(14)+1;
    while farr[i]=true do
    begin
    i:=Random(14)+1;
    end;
    rarr[k]:=i;
    farr[i]:=true;
    end;
    ListBox1.Clear;

    for i:=1 to 14 do
    ListBox1.Items.Add(IntToStr(rarr[i]));
    end;

  • 相关阅读:
    [GXOI/GZOI2019] 旧词
    [HDU6756] Finding a MEX
    [洛谷P5110] 块速递推
    [CF739C] Alyona and towers
    1349. 修理牛棚
    L2-028 秀恩爱分得快 (25 分)
    L2-009 抢红包 (25 分)
    L1-043 阅览室 (20 分)
    2020年天梯赛-模拟赛 L1-6 检查密码 (15 分)
    L1-046 整除光棍 (20 分)
  • 原文地址:https://www.cnblogs.com/sunsoft/p/1989408.html
Copyright © 2011-2022 走看看