Private Sub Command1_Click()
Dim a(0 To 4) As Integer
Randomize
For i = 0 To UBound(a)
a [i] = Int((12 * Rnd) + 1)
Next i
End Sub
这段代码错在哪里?
提示---------------------------
Microsoft Visual Basic
---------------------------
编译错误:缺少子程序、函数或属性
---------------------------
确定 帮助
---------------------------
Dim a(0 To 4) As Integer
Randomize
For i = 0 To UBound(a)
a [i] = Int((12 * Rnd) + 1)
Next i
End Sub
这段代码错在哪里?
提示---------------------------
Microsoft Visual Basic
---------------------------
编译错误:缺少子程序、函数或属性
---------------------------
确定 帮助
---------------------------
解决方案 »
- 大侠们帮看下,删除list2中尺寸大于100M的文件,我这样写为什么不管用?
- 怎么使用计时器让时间一直走
- 另存为文件名,捕获Caps Lock事件
- 我遇到一个自己无法实现的问题,特来请教。联系qq:1418050559
- 请高手帮忙解决一个关于SQLGetData函数的问题
- 【问】如何在运行时暂时禁止XP的所有盘符自动播放?(光驱、移动盘)
- 使用printer代码打印报表,在EPSON1600K上一切正常,但换了台打印机后打印时,系统提示插入纸张.
- htmlhelp的问题
- System.Runtime.InteropServices.COMException (0x80004005): 未指定的错误
- 谁能收我为徒
- 【倒分嫌疑】请接受调查
- 高分找专家帮忙解决VB的多列打印问题
Dim a(0 To 4) As Integer
Randomize
For i = 0 To UBound(a)
a(i) = Int((12 * Rnd) + 1)
Next i
End Sub这样对了
可是怎么让产生的4个随机数不重复啊?
Dim a(0 To 4) As Integer
For i = 0 To UBound(a)
Randomize '放在这里
a (i) = Int((12 * Rnd) + 1)
Next i
End Sub
Dim a(0 To 4) As Integer
For i = 0 To UBound(a)
Randomize Timer '这样写就对了
a (i) = Int((12 * Rnd) + 1)
Next i
End Sub
Dim strRet As String
Dim a(0 To 3) As Integer
Dim f As Integer
f = 0
strRet = ""
Randomize Timer
For i = 0 To UBound(a)
l: a(i) = Int((12 * Rnd) + 1)
For k = 0 To i - 1
If i - 1 >= 0 Then
If a(i) = a(k) Then f = 1
End If
Next k
If f = 1 Then GoTo l
Next i
For j = 0 To UBound(a)
If strRet <> "" Then strRet = strRet & ","
strRet = strRet & a(j)
Next j
MsgBox strRet
End Sub为什么这段代码执行几次就出现死机的情况了呢?好像进入无限循环了,谁知道?
Dim a(0 To 4) As Integer
For i = 0 To UBound(a)
Randomize Timer '这样写就对了
a (i) = Int((12 * Rnd) + 1)
Next i
End Sub这样也会重复
Dim a(0 To 3) As Integer
For i = 0 To UBound(a)
Randomize Timer
a (i) = Int((12 * Rnd) + 1)
Next i
End Sub 怎样写才能使产生的4个随机数不重复啊?说明Randomize 用 number 将 Rnd 函数的随机数生成器初始化,该随机数生成器给 number 一个新的种子值。如果省略 number,则用系统计时器返回的值作为新的种子值。如果没有使用 Randomize,则(无参数的)Rnd 函数使用第一次调用 Rnd 函数的种子值。注意 若想得到重复的随机数序列,在使用具有数值参数的 Randomize 之前直接调用具有负参数值的 Rnd。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。?
这句话怎么理解啊?
Private Sub Command1_Click()
Dim strRet As String
Dim a(0 To 3) As Integer
Dim f As Integer
f = 0
strRet = ""
Randomize Timer
For i = 0 To UBound(a)
l: a(i) = Int((12 * Rnd) + 1)
For k = 0 To i - 1
If i - 1 >= 0 Then
If a(i) = a(k) Then f = 1
End If
Next k
If f = 1 Then GoTo l
Next i
For j = 0 To UBound(a)
If strRet <> "" Then strRet = strRet & ","
strRet = strRet & a(j)
Next j
MsgBox strRet
End Sub
我用了这段代码,为什么这段代码执行2次就出现死机的情况了呢?(前两个的结果是正常不重复的啊!第三次就不行了)好像进入无限循环了,谁知道?