求一段VB程序代码

来源:百度知道 编辑:UC知道 时间:2024/05/12 11:18:59
要求是TEXT1 中显示随机从1到33中抽出6个数,然后再按一次command能再从1到33中 抽出6个数字(每次都是 从33个数字中随机抽6个数字)
要六个不一样的数据,唉

如果要那样就要复杂一点了。

代码如下:(用了我以前写的几个函数,你可以保存下来,这种查询是可以通用的,可以查N个1-M之间不重复的随机数,且排序)

Function getRnd(i As Integer) As Integer '取1-i之间的随机数一个
Randomize
getRnd = Int(Rnd() * i + 1)
End Function

Function getAllRnd(Counter As Integer, jishu As Integer) As Integer() '取Counter个1-jishu之间的随机数
If (Counter > jishu) Then
MsgBox "数字个数不能大于基数"
Exit Function
End If
ReDim arr(Counter) As Integer
i = 0
Do While i < Counter
arr(i + 1) = getRnd(jishu)
found = False
For x = 1 To i
If arr(x) = arr(i + 1) Then
found = True
Exit For
End If
Next
If Not found Then
i = i + 1
End If
Loop

getAllRnd = arr
End Function

Sub OrderNumber(arr) '从小到大排序
For i = 1 To UBound(arr)
For j = i + 1 To UBound(arr)
If arr(i) > arr