怎样对 Rnd进行 自然数范畴或大小或奇偶的随机控制呢我用过if ...then 来控制Rdn随机范畴还是行不通了。

解决方案 »

  1.   

    rnd(1)*N  表示取得0-N之间的自然数.
    Rnd(1)*N*2 表示取得 0-2N 之间的偶数
    rnd(1)*N*2+1 表示取得 1-2N+1 之间的奇数 
      

  2.   

     (1) rnd(1)*N  表示取得0-N之间的自然数. 这是顺序数的时候可以的,但是,1 6 8 9 这样非顺序的数据怎样做呢?
      (2)  同时,怎样运行上面的规则呢? 如数据上 控制为15678,还有奇偶控制为 奇,怎样应用呢
      
      

  3.   

    dim Arr(1 to 4) as string
    arr(1)=1
    arr(2)=6
    arr(3)=8
    arr(4)=9dim RndIndex as long 
    Rndindex=int(rnd(1)*4+1)msgbox Arr(RndIndex)
      

  4.   

    上面是取得 1 6 8 9 中的随机数的.15678 取得 中的奇数位的数dim Arr(1 to 5) as string 
    arr(1)=1 
    arr(2)=5 
    arr(3)=6 
    arr(4)=7 
    arr(5)=8 dim RndIndex as long 
    Rndindex=int(rnd(1)*3)*2+1 msgbox Arr(RndIndex)
      

  5.   

    大致思路
    Private Sub Command1_Click()
      Dim i As Long, N As Long, s As Double
      Dim yt() As Long
      N = 5
      ReDim yt(N - 1)
      yt(0) = 1
      yt(1) = 5
      yt(2) = 6
      yt(3) = 7
      yt(4) = 8
      For i = 1 To 1000
        s = Rnd * N
        Debug.Print s; yt(Int(s))
      Next
    End Sub
      

  6.   


    arr(1)=1 
    arr(2)=6 
    arr(3)=8 
    arr(4)=9 
            怎么不对了,错误提示为<无效外部过程>
      
    Arr(1) = "1"
    Arr(2) = "6"
    Arr(3) = "8"
    Arr(4) = "9"  这样该仍然一样
      

  7.   

    试试这个:
    1)自然数取值:
      n = Int((上限 - 下限 + 1)* Rnd + 下限)2)奇偶判断:
      If n Mod 2 = 0 Then
        oushu = n '偶数
      Else
        jishu = n '奇数
      End If
      

  8.   


    试试这个: 
    1)自然数取值: 
      n = Int((上限 - 下限 + 1)* Rnd + 下限) 2)奇偶判断: 
      If n Mod 2 = 0 Then 
        oushu = n '偶数 
      Else 
        jishu = n '奇数 
      End If 
    这里,依我看只能奇偶判断,不可能随机出好时的奇偶不接受控制了
      

  9.   


    for i=1 to 10
    int(rnd(1)*3)+1 '0 起始3位
    next随机出现 1 3 5for i=1 to 10
    int(rnd(1)*3) '0 起始3位
    next随机出现 0 2 4
      

  10.   

    上面错了,要乘以2for i=1 to 10 
    int(rnd(1)*3)*2+1 '0 起始3位 
    next 随机出现 1 3 5 for i=1 to 10 
    int(rnd(1)*3)*2 '0 起始3位 
    next 随机出现 0 2 4 
      

  11.   

    for i=1 to 10 
    int(rnd(1)*3)+1 '0 起始3位 
    next 这个运行,偶数也出来了