Option Explicit
Dim i As Integer,j As Integer'用于数组的变量
Dim Temp As Integer '保存随机数的容器
Dim Flag As Boolean '判断生成的数是废掉还是保存
Dim k As Integer '生成的数的个数K
Dim m As Integer '生成数的范围的下界M
Dim n As Integer '生成数的范围的上界N
Dim max As Integer '进行最大值判断的变量
Dim p As String
Private Sub Command1_Click()
'取值 生成的数的个数K、生成数的范围的下界M、生成数的范围的上界N
k = Val(Text1.Text)
n = Val(Text2.Text)
m = Val(Text3.Text)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'生成k个从m-n范围的不重复的随机数
ReDim a(0 To k) '定义一个数组范围从0到k
Randomize
For i = 0 To k
Temp = Int(Rnd * (n - m + 1) + m) '生成一个随机数
Flag = False 'flag的默认初值是false
For j = 0 To i - 1 '生成的新的数与前面生成的数比较,如果相等就废掉这个数,如果不等就保存 到a(i)
If Temp = a(j) Then
i = i - 1
Flag = True
Exit For
End If
Next j
If Flag = False Then
a(i) = Temp
If i = k Then
Print a(i) & Chr(13) & Chr(10)
Else
Print a(i);
End If
End If
Next i
'‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’
'大小的比较
max = a(0)
'把产生的第一个数a(0)视为最大的数
For i = 1 To k '如果后面的数大于max则把这个数付给max
If max < a(i) Then
max = a(i)
End If
Label1.Caption = Str(max)
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。