永发信息网

一个关于vb随机数的问题

答案:1  悬赏:20  手机版
解决时间 2021-05-01 06:59
  • 提问者网友:蔚蓝的太阳
  • 2021-04-30 19:53

我编写了一个程序

Dim flag As Integer
Dim m(1 To 100) As Integer
Dim i As Integer
Dim p As Integer
Function f(i) As Integer
For p = 1 To i - 1
    If m(i) = m(p) Then m(i) = (Int(Rnd() * c) + b): flag = 1
    If m(i) <> m(p) Then flag = 0
Next p
If flag = 0 Then Print (m(i))
If flag = 1 Then f (i)
End Function
Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer
Dim j As Integer
Randomize
a = InputBox("您想产生几个随机数呢?")
b = InputBox("随机数范围的起点是多少呢?(能取到)")
c = InputBox("随机数范围的终点是多少呢?(能取到)")
For i = 1 To a
    flag = 0
    m(i) = (Int(Rnd() * c) + b)
    f (i)
Next i
End Sub
我试图用这个程序来求随机数,但有时会跳出“溢出”提示,而且随机数也不对(比如从1开始随机时会出现0),请高手指教会给出另外的类似程序

最佳答案
  • 五星知识达人网友:你哪知我潦倒为你
  • 2021-04-30 20:43

这个问题怎么这么多?


这个是我写的,在窗体上添加一个command按钮即可


Private Sub Command1_Click()
Dim i, r(), a, b, c As Integer
a = InputBox("从几开始?", "输入", 0)
b = InputBox("到几?", "输入", a + 1)
c = InputBox("你想产生几个?", "输入", 1)
ReDim r(c)
Randomize
For i = 0 To c - 1
    r(i) = Int(Rnd() * (b - a + 1) + a)
Next
For i = 0 To c - 1
Print r(i)
Next
End Sub

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯