就是设10个变量,然后求10个随机数,1到100之间的整数,第一个当然直接放进第一个变量了,然后再求第二个,求出后和第一个进行比较,相同就放弃重新求一个,再比较,不同就放进第二个变量,然后求第三个,求出后和前两个比较,依次类推,最后结果就是求出10个各不相同的随机数放在那十个变量中,这应该怎么写啊?俺已经写的头都大了,最后运行结果就是不对,俺承认,俺数学和逻辑都不好,哪位达人救救俺吧!!~~小弟在次拜谢了!!!!

解决方案 »

  1.   

    呵呵,说得很清楚了,把你的文字翻译成语句就行了。var
      number:array[1..10] of Integer;
    procedure TForm1.Button1Click(Sender: TObject);
      function NextRandom(n:Integer):Integer;
      var
        i:Integer;
        blnFound:Boolean;
      begin
        blnFound:=False;
        while not blnFound do
        begin
          blnFound:=True;
          Result:=Random(100)+1;
          for i:=1 to n-1 do
          begin
            if Result=number[i] then
            begin
              blnFound:=False;
              break;
            end;
          end;
        end;
      end;
    begin
      Randomize;
      number[1]:=Random(100)+1;
      number[2]:=NextRandom(2);
      number[3]:=NextRandom(3);
      number[4]:=NextRandom(4);
      number[5]:=NextRandom(5);
      number[6]:=NextRandom(6);
      number[7]:=NextRandom(7);
      number[8]:=NextRandom(8);
      number[9]:=NextRandom(9);
      number[10]:=NextRandom(10);
    end;当然,你还可以优化程序