VB从100个数中随机抽取10个怎么做?谢谢!
来源:百度知道 编辑:UC知道 时间:2024/05/13 04:54:53
'有点忘了vb怎么写,看看大概意思吧。
dim v(10),A(100) as integer
dim i,index,d,t as interger
dim goodValue
setValue(A) '将A赋值,比如:for i=1 to 100 A(i) = i next i
init(v) '为v(存储取出的值)赋给一个非数组A中任何一个值。如:A(i) = -1
index = 0 '已选取个数
while(index <= 10)
d = getRand(1,100) '为 d 找个1-100之间的随机数,是 rand() 还是 cint(rnd * 100)?
goodValue = true '假设可用
for i = 1 to 10
if (A(d) = v(i))
goodValue = false '已存在于v(10)中,无效的数
end if
next
if(goodValue = true) '有效的数
index += 1 '有效数字个数加一
v(index) = A(d) '存入数组
end if
end while
有点没懂,是这10个数不能有相等(而100个数可能有数相等);还是只需每次取得下标不同即可(这样的话用v纪录下标值d而不是A(d),判断也是,就行了)……
Private Sub Command1_Click()
Dim a(10) As Integer
Dim i As Integer
Dim j As Integer
For i = 1 To 10
Randomize
l:
a(i) = Int(100 * Rnd + 1)
For j = 1 To i - 1
If a(j) = a(i) Then