
用VB怎么产生不重复的随机数?
每按一次按钮就产生一个1-10的随机数!可能我说得不够清楚!我要的是产生不重复的!就是每按一次就产生一个数!连续按10次!出来的十个数都是不重复的!不要复制以前的答案!我...
每按一次按钮就产生一个1-10的随机数!
可能我说得不够清楚!
我要的是产生不重复的!就是每按一次就产生一个数!连续按10次!出来的十个数都是不重复的!
不要复制以前的答案!我要实际的例子+答案! 展开
可能我说得不够清楚!
我要的是产生不重复的!就是每按一次就产生一个数!连续按10次!出来的十个数都是不重复的!
不要复制以前的答案!我要实际的例子+答案! 展开
5个回答
展开全部
Dim a(1 To 10) As Integer
Private Sub Command1_Click()
Static n As Integer
n = n + 1
If n > 10 Then Exit Sub
Do
x = Int((10 - 1 + 1) * Rnd + 1)
j = True
For i = 1 To n - 1
If x = a(i) Then j = False: Exit For
Next i
Loop Until j
a(n) = x
Command1.Caption = a(n)
End Sub
Private Sub Form_Load()
Randomize
End Sub
Private Sub Command1_Click()
Static n As Integer
n = n + 1
If n > 10 Then Exit Sub
Do
x = Int((10 - 1 + 1) * Rnd + 1)
j = True
For i = 1 To n - 1
If x = a(i) Then j = False: Exit For
Next i
Loop Until j
a(n) = x
Command1.Caption = a(n)
End Sub
Private Sub Form_Load()
Randomize
End Sub
展开全部
Private Sub Command1_Click()
Randomize
me.caption=Int((10- 1 + 1) * Rnd + 1)
End Sub
Randomize
me.caption=Int((10- 1 + 1) * Rnd + 1)
End Sub
参考资料: 最恨VB是一个最爱VB的人 ^^
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Command1_Click()
Randomize
a = Int((10 - 0 + 1) * Rnd + 0)
Print a
End Sub
Randomize
a = Int((10 - 0 + 1) * Rnd + 0)
Print a
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Command1_Click()
Randomize
a = Int((10 - 0 + 1) * Rnd + 0)
Print a
End Sub
Randomize
a = Int((10 - 0 + 1) * Rnd + 0)
Print a
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Rnd 函数
返回一个包含随机数值的 Single。
语法
Rnd[(number)]
可选的 number 参数是 Single 或任何有效的数值表达式。
返回值
如果 number 的值是 Rnd 生成
小于 0 每次都使用 number 作为随机数种子得到的相同结果。
大于 0 序列中的下一个随机数。
等于 0 最近生成的数。
省略 序列中的下一个随机数。
说明
Rnd 函数返回小于 1 但大于或等于 0 的值。
number 的值决定了 Rnd 生成随机数的方式。
对最初给定的种子都会生成相同的数列,因为每一次调用 Rnd 函数都用数列中的前一个数作为下一个数的种子。
在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器,该生成器具有根据系统计时器得到的种子。
为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
注意 若想得到重复的随机数序列,在使用具有数值参数的 Randomize 之前直接调用具有负参数值的 Rnd。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。
返回一个包含随机数值的 Single。
语法
Rnd[(number)]
可选的 number 参数是 Single 或任何有效的数值表达式。
返回值
如果 number 的值是 Rnd 生成
小于 0 每次都使用 number 作为随机数种子得到的相同结果。
大于 0 序列中的下一个随机数。
等于 0 最近生成的数。
省略 序列中的下一个随机数。
说明
Rnd 函数返回小于 1 但大于或等于 0 的值。
number 的值决定了 Rnd 生成随机数的方式。
对最初给定的种子都会生成相同的数列,因为每一次调用 Rnd 函数都用数列中的前一个数作为下一个数的种子。
在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器,该生成器具有根据系统计时器得到的种子。
为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
注意 若想得到重复的随机数序列,在使用具有数值参数的 Randomize 之前直接调用具有负参数值的 Rnd。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询