结果当然不一样了
randomize;
是初始化随机数种子

解决方案 »

  1.   

    RANDOMIZE本身为随机数初始化,好象其产生过程有问题
    最好只进行一次初始化,这样才能达到目的
      

  2.   

    randomize初始化随机数种子,初始化一次产生随机数已经不同了
      

  3.   

    chxiong给我的留言:
    ------------------------------
    我试过了两个语句的执行,它们产生的结果是分别是
    44   38   86   88   79   17   10   17   76   78  69   69   69   69   69   69   69   69   69   69   
    -------------------------------我也觉得纳闷?为什么会是这样?
      

  4.   

    randomize初始化随机数种子时和系统时间有关,试试
    var i:integer;
        a:array[1..10] of integer;
    begin
      for i:=1 to 10 do
      begin
        randomize;
        sleep(500);
        a[i]:=random(100);
        edit2.text:=edit2.text+inttostr(a[i])+'   ';
        end;
    end;
      

  5.   

    这是Delphi联机文档中的关于Randomize的内容:
    Do not combine the call to Randomize in a loop with calls to the Random function. Typically, Randomize is called only once, before all calls to Random.
    可见第二种产生随机数的方法是不对的,至于根本原因我想可能和Randomize要依据系统时间有关。