vb,Dim a(9) As Integer,Dim i As Integer,Dim j As Integer,Dim temp As Integer,Dim flag As Integer,,Private Sub Form_Load(), Randomize '初始化随机数生成器, i = 1, Do While i i - 1 Then '如果没有重复,将该数存入数组, a(i) = temp, i = i + 1, ElseIf j = i - 1 Then '如果有重复,重新生成随机数, i = i + 1, End If, Loop,End Sub,
“在Visual Basic(VB)编程中,生成不重复的随机数是一个常见的需求,这通常可以通过使用集合(Collections)类中的Randomize
方法和Distinct
方法来实现。
我们需要创建一个集合来存储随机数,我们可以使用Random
类来生成随机数,并将其添加到集合中,如果生成的随机数已经在集合中存在,那么我们就需要重新生成一个新的随机数,直到生成的随机数是唯一的为止。
以下是一个简单的示例代码:
Imports System.Collections.Generic Imports System.Linq Module Module1 Sub Main() ' 创建一个集合来存储随机数 Dim randomNumbers As New HashSet(Of Integer)() ' 使用Random类生成随机数 Dim random As New Random() ' 循环直到集合中有10个唯一的随机数 While randomNumbers.Count < 10 ' 生成一个随机数 Dim number As Integer = random.Next(1, 100) ' 这里的范围可以根据需要进行调整 ' 如果这个随机数是唯一的,那么就将其添加到集合中 If Not randomNumbers.Contains(number) Then randomNumbers.Add(number) End If End While ' 输出生成的不重复随机数 For Each number In randomNumbers Console.WriteLine(number) Next End Sub End Module
在这个示例中,我们使用了HashSet
类来存储随机数,这是一个无序的集合,其中的元素不能重复,当我们将随机数添加到集合中时,如果生成的随机数已经存在,那么就会自动忽略它,从而保证了生成的随机数的唯一性。
我们还使用了Random
类来生成随机数,这个类提供了各种方法来生成不同类型的随机数,包括整数、浮点数、布尔值等,在这个示例中,我们使用了Next
方法来生成一个介于0和99之间的随机整数,你可以根据需要调整这个范围。
我们使用了For Each
循环来遍历集合并输出每个随机数,这种方式比使用索引访问集合中的元素更加直观和易读。
原创文章,作者:酷盾叔,如若转载,请注明出处:https://www.kdun.com/ask/137995.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复