正文
vb.net无重复随机数,随机生成不重复整数VB
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
在vb中怎么随机产生不重复的数字
产生不重复的,需要在程序里保存一个已经生成的数字列表。每次随机生成的时候就在之中搜索有无同样的,如果有,就重新生成。
例:
假如要生成5个数字,则
include
time.h
include
stdlib.h
int
numgen[5]
=
{0,
0,
0,
0,
0};
int
index
=
0;
bool
isgenerated(int
newnum)
{
for(int
i=0;
iindex;
i++)
{
if(numgen[i]
=
newnum)
return
true;
}
return
false;
}
void
main()
{
srand((unsigned)time(null));
int
newnum
=
rand();
for(index
=
0;
index
5;
index++)
{
while(!isgenerated(newnum))
newnum
=
rand();
numgen[index]
=
newnum;
}
}
vb程序 随机数不重复
随机数不能保证完全不重复,但是你可以这样:
另设一个布尔数组作为状态,初值都设为false,和词语的数组一一对应,抽到某个词语后,把相应的状态设为true,以后如果重复,就会发现对应的状态为true,这样你可以忽略这次的抽取动作而取下一个随机数直至所有的状态都为true,你的程序就再也抽不出任何词语了。
vb怎么产生不重复随机数
先声明一个存放随机数的数组,然后遍历数组,如果重复再随机生成一个替换
用vb怎样生成10个不重复的(1到10)随机数?
vb生成10个不重复的随机数代码:
Private Sub Command1_Click()
Dim a(9) As Integer
For i = 0 To 9
GoTo way1
End If
Next p
End If
Print a(i)
Next i
End Sub
扩展资料:
随机数字:
(1)生成随机数比较简单,=rand()即可生成0-RAND_MAX之间的随机数;(#define RAND_MAX 0x7fffu)
(2)如果要是整数,就用=int(rand()%10),表示0至9的整数,以此类推;
(3)如果要生成a与b之间的随机实数,就用=rand()%(b-a+1)+a,就能产生固定位数的整数了,以此类推。