vb 随机数的生成?

来源:百度知道 编辑:UC知道 时间:2024/06/15 12:18:56
VB中如何生成一个符合自己定义的随机数?
要求1.确定值的范围
2.确定随机数是整数或者是小数或者是小数点后几位

请说详细点谢谢
详细点阿。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

表达式=rnd*a+b
范围(b,a+b)

整数 int(rnd*a+b)
取n位小数

int((rnd*a+b)* 10^n)/10^n

Private Sub Command1_Click()
Dim i As Integer, j, m, n As Single

j = InputBox("生成的数值范围")
i = Int(Rnd() * j) '整数
m = Rnd() * j '小数
n = Format((Rnd() * j), "0.000") '确定小数位数
Print i, m, n
End Sub

用内部函数RND函数…或者自己定义一个函数…比如均匀分布函数…自己找啊…呵呵

代码如下:

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) =