vB随机函数不重复

在使用rnd随机函数之前用Randomize对其进行初始化.例子如下:Randomize a=10*rnd()

呵呵.不重复随机数?我试过了,用rand很方便,不过有重复的,如果要每次与老的数字比较,感觉太麻烦..我常用的办法就是如果我需要产生100个不重复的随机数.我会用rand产生100000或者更多的随机数,然后把重复的去掉就完了.

你用的是随机函数啊..随机函数只是随机出现,不代表不会重复啊你这样搞,定义个数组.然后把查询过的随机数据保存在数组里.在下次查询的时候使用FOR循环检索下,然后再for里用个if去判断.重复的直接跳过这样就行了、代码会写吗?不会的话追问,我给你写好

不写具体代码了,没意思,就说下算法吧.这种要求不重复随机数一般是采用随机洗牌算法.例:在一个数组中依次放入1~10的数,然后通过循环随机打乱(方法很多,比如随机两个数组下标然后交换),一定次数循环后依次读取此数组中的数,得到的就是不重复随机的1~10之间的数了.楼上两位的方法都效率太低,在几十个数的小规模下还可以,数多了就不行了.

Private Sub Command1_Click() Text1 = rndx End Sub Function rndx() As Integer Dim i, j, k As Integer i = Int(Rnd() * 10) j = Int(Rnd() * 10) Do While j = i j = Int(Rnd() * 10) DoEvents Loop k = Int(Rnd() * 10) Do While k = i Or k = j k = Int(Rnd() * 10)

int(rnd*36) int取整数 rnd 0~1的一个随机数 然后*36 就是0~36的随机数 之后做一个 for i=0 to 6 输出方式 next i 做一个循环 然后输出方式自己定(print、label什么的) 意识是这样,好久没做vb了,都还老师了 不知道对不对了.

使用Randomize 语句,初始化随机数生成器.Randomize 语句示例 本示例用 Randomize 语句初始化随机数生成器.由于忽略了数值参数, 所以 Randomize 用 Timer 函数的返回值作为新的随机数种子值.Dim MyValue Randomize ' 对随机数生成器做初始化的动作.MyValue = Int((6 * Rnd) + 1) ' 生成 1 到 6 之间的随机数值.

我的建议是:第一步、先做一个数组,存上这35个数(可以不是连续的数,也可以是人名、字符串什么的);第二步、随机生成一个1-35之间的数,输出;第三步:把这个数和数组的第一个单元交换;第四步、从数组的第2-35之间随机抽取第二

使用arraylist,每次随机产生数字后放入,检查contain(),为真则继续随机.另一种方法比较猥琐,第一个text随机1-10,第二个text随机1-4加上第一个数字,第三个text随机1-2加上第二个数字,保证不重复.

用数组的..放进去33个.随机1个后,放到最大数组元素中,然后在32个中继续随机..如此循环,得到不重复的6个数,分别放到Text2-text7中:Dim s(1 To 33), i%, j, m%For i = 1 To 33s(i) = iNextRandomizeFor i = 1 To 6m = Int(Rnd * (33 - i) + 1)j = s(34 - i)s(34 - i) = s(m)s(m) = jNextText2 = s(33)Text3 = s(32)Text4 = s(31)Text5 = s(30)Text6 = s(29)Text7 = s(28)

相关文档

vb随机生成的数不重复
vb随机生成两位数
vb随机函数10个随机数
vb产生10个随机数
vb随机数不重复
vb随机产生整数
vb生成100个随机数
随机产生20个数vb编程
vb如何产生不重复的随机数
vb抽取随机数不重复
vb随机数不重复值
vb中生成不重复随机数
vb程序随机生成数
vb产生不重复的随机数
vb产生n个随机数
vb随机生成不重复的数字
vb如何生成多个随机数
vb随机函数概率
电脑版