【实例说明】 在随机取数时,可能会出现相等的数。
【编程思路】 动态数组。
【设计步骤】
1.新建一个标准工程,创建一个新窗体,默认名为Form1。
2.在窗体上添加一个CommandButton控件。
3.源程序 [素材源程序下载]
Option Explicit
Option Base 1
Private A() As Long
Private i As Long
Private N As Long
'取在1~~25内的20个不同的数
Private Sub Command1_Click()
Me.Cls
N = 20
Call sVaryNumber(N)
For i = 1 To N
Print A(i)
Next i
End Sub
'取N个不相等的数
Private Sub sVaryNumber(ByVal N As Long)
ReDim A(N)
A(1) = fRndNumber
For i = 2 To N
Call sGetNumber
Next i
End Sub
'取不相等的数
Private Sub sGetNumber()
Dim j As Long
A(i) = fRndNumber
For j = 1 To i - 1
If A(i) = A(j) Then
Call sGetNumber
End If
Next j
End Sub
'取1~~25之间的随机数
Private Function fRndNumber() As Long
Randomize
fRndNumber = Int(Rnd * 25) + 1
End Function
|