rnd读出并存入数组,以后比较

解决方案 »

  1.   

    先用rnd选出题目的ID
    然后根据ID从题库中找相应的题目
      

  2.   

    就用RND()然后有判断语句进行判断就可以生成随机了,
    也可以自定义一个随机函数那很麻烦的
      

  3.   

    用rnd选出题目的ID,这样有重复。有没有好点的办法去掉重复
    简单点说:我从1000数中,如何取出100个随机且无重复的数据,给出算法
    我将追加50分
      

  4.   

    你可以在表中加一个字段,来标识考体记录是否被提取,例如0为未提;1为已提。
    每一次使用Rnd获得随即数,从库中提一个就把标志设为1
      

  5.   

    这是我的一个程序的一部分,可供大家参考。这个程序是一个纸牌程序的发牌的动作。有两副牌,所以有108张牌。Public Sub fapai()
    Dim j(107) As Single '设置一个数组来确定牌发过几次,从而避免发牌重复
    Dim i, rndvalue As Integer
    '设置所有牌的背景图案
    cardfilename = Array(123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 179, 180, 181)
    For i = 0 To 107
    again:     Randomize Timer  '初始化随机种子
               rndvalue = Int(Rnd() * 54)
               If j(rndvalue) = 0 Or j(rndvalue) = 1 Then
                  '设置所有牌的正面图案
                  Set playercard(i).card_front_picture = LoadResPicture(cardfilename(rndvalue), vbResBitmap)
                  image1(i).Picture = playercard(i).card_back_picture
                Else
                  GoTo again
               End If
    Next i
    End Sub如果有问题可以写信给我。[email protected]
      

  6.   

    补充一点,j(rndvalue)如果是0就说明没有发过,可以发,如果是1,也可以发,因为我这里是两副牌。但是如果是2的话,就不能发了。就从新取随机数。
      

  7.   

    你的发牌思路可以见解,不过我有几个不明白的地方?
    你的j(rndvalue)=?我怎么知道啊,你上面好象没有给它值啊。从程序看
    j(rndvalue)应该都是0
    ================================================================
    我爱学习故我在!
    我爱学习故我在!
    我爱学习故我在!
      

  8.   

    对,在GOTO AGAIN上面的那个ELSE前面加上一句j(rndvalue)=j(rndvalue)+1
      

  9.   

    还不清楚的话,就写E-MAIL,或把你的E-MAIL给我吧。我会关注这个帖子的。我要走了。88。晚安!!!
      

  10.   

    好的,[email protected]
    ================================================================
    我爱学习故我在!
    我爱学习故我在!
    我爱学习故我在!
      

  11.   

    到我的主页上,那有我的qq
    moon15.6to23.com
    ================================================================
    我爱学习故我在!
    我爱学习故我在!
    我爱学习故我在!
      

  12.   

    Dim s(1 To 100) As Integer
    Private Sub Command1_Click()
    Dim i As Integer, j As Integer
    For i = 1 To 100
    again:      Randomize 5
                s(i) = Int(100 * Rnd + 1)
                For j = 1 To (i - 1)       
                    If s(j) = s(i) Then
                       GoTo again
                    End If
                Next
       Debug.Print s(i)
    Next
    End Sub
    我写出来了,大家看看对不对,从200个数中,提取随机数,而且没有重复的
    ================================================================
    我爱学习故我在!
    我爱学习故我在!
    我爱学习故我在!