vb生成指定范围的随机数(vba生成指定范围的随机数)
在VB中随机产生(a,b]范围内整数的公式是什么
1、vb中产生[a,b]区间的随机数的公式是:Int((b- a+ 1) * Rnd + a)
2、根据以上公式得出,根本无法以公式法生成(a,b](半开区间)范围内的随机数。
3、Rnd 函数返回小于 1 但大于或等于 0 的值。
4、int是取整函数。
在VB中,如何生成某个范围内的随机整数?
为了生成某个范围内的随机整数,可使用以下公式:
Int((上界
-
下界
+
1)
*
Rnd
+
下界)
公式中的上界就是你所要生成这个随机范围的最大值,下界就是你所要生成这个随机范围的最小值。
如何用VB从指定的数里生成出个随机数
第一个问题:你可以先这几个数放丰一个数组中,然后随机生成一个下标,不就行了。第二个问题:你在窗体上画两个按钮Command1、Command2、一个Timer控件Timer1、一个标签Label1。
Timer1的Enabled属性设为False,Interval设为100。双击Command1,写下列代码:
Timer1.Enabled
=
True。
双击Command2,写下列代码:
Timer1.Enabled
=
False
双击timer1,写下列代码:
Dim
A(4)
As
Integer,
I
As
Integer
A(0)
=
2:
A(1)
=
3:
A(2)
=
5:
A(3)
=
7:
A(4)
=
8
Randomize
I
=
Int(Rnd()
*
4)
Label1.Caption
=
A(I)
vb 在一定范围内,输出固定的随机数。
'添加一个模块代码丢进去
Public x(99999)
Public Enum Judge
不等于 = 0
等于 = 1
小于 = 2
大于 = 3
小于或等于 = 4
大于或等于 = 5
End Enum
Public Function Random(Optional x = 2 ^ 31, Optional Judge As Judge = 2, Optional y = 0, Optional z As Long = 1)
On Error Resume Next
re:
Select Case z '只保留整数(0/1),1为保留
Case 0
DoEvents
Randomize ' 初始化
Random = Rnd * Val(x) ' 需要随机的数
Case 1
DoEvents
Randomize ' 初始化
Random = Fix(Rnd * Val(x)) ' 需要随机的数
End Select
Select Case Judge
Case 不等于
If Random Val(y) Then GoTo re '不等于
Case 等于
If Random = Val(y) Then GoTo re '等于
Case 小于
If Random Val(y) Then GoTo re '小于
Case 大于
If Random Val(y) Then GoTo re '大于
Case 小于或等于
If Random = Val(y) Then GoTo re '小于或等于
Case 大于或等于
If Random = Val(y) Then GoTo re '大于或等于
End Select
End Function
'在command1里写
Private Sub Command1_Click()
For i = 0 To Val(Text1.Text)
x(i) = Random(Text3.Text, 小于, Text2.Text)
Text4.Text = ""
Text4.Text = Text4.Text x(i) vbCrLf
Next
End Sub
VB 怎样控制随机数范围
为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
vb如何生成某一范围内的随机数,并且排除某些数字?
要产生范围 [lowerbound,upperbound]内的随机数的语句:
x = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
如果要排除 其中的某一些数,例如:a、b、c(当然a、b、c在该范围内)
那么:
x = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
Do While x = a Or x = b Or x = c
x = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
Loop