Dim k() As Integer = New Integer() {1, 2, 3, 4, 5, 6}
成都创新互联专注于企业全网整合营销推广、网站重做改版、环县网站定制设计、自适应品牌网站建设、H5高端网站建设、成都商城网站开发、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为环县等各大城市提供网站开发制作服务。
Dim p1 As Integer
Random r = new Random();
int p1 = k(r.Next(5)) '随机出现0~5之间的数。
方法名称:next();功能描述:返回一个0~2147483647之间的整数
方法名称:next(i);功能描述:返回一个0~i之间的整数
方法名称:next(i,j);功能描述:返回一个i~j之间的整数
方法名称:Nextdouble();功能描述:返回一个0~1之间的随机小数
================
使用方法:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim rand = New System.Random()
MsgBox(rand.next().ToString())
End Sub
==========================
产生N个不同数的话,我给你个我写的VB的代码,你稍微改下:
产生0-10的数:
Private Sub Command1_Click()
Randomize
Dim a(10) As Long
n = 10
For i = 0 To n
a(i) = Int(Rnd() * (n + 1))
For j = 0 To i - 1
If a(i) = a(j) Then
i = i - 1
Exit For
End If
Next
Next
For i = 0 To n
Print a(i)
Next
End Sub
取随机数可以用 Random 类。
给定10个数的话,可以把这10个数放在一个数组里,然后取0~9的范围内的随机数,用它当数组下标取数组成员即可。
Rnd[(number)]
number
的值决定了
Rnd
生成随机数的方式
如果
number
的值
Rnd
生成
小于
每次都使用
number
作为随机数种子得到的相同结果。
大于
序列中的下一个随机数。
等于
最近生成的数。
省略
序列中的下一个随机数。
====================
先讨论没有加randomize时
X小于0
如
rnd(-1)
以-1为种的随机数永远相同
X大于0
如
rnd(1)
系统会先生成随机数列表
有N个随机数
你每执行一次rnd(1)就获取列表中下一个随机数
比如有这么个列表
程序开始时
得到0.7055475
执行第二次rnd(1)得到0.533424
第三次0.5795186
你关闭程序重新打开
第一次得到还是0.7055475
.7055475
.533424
.5795186
.2895625
.301948
而你说的X0
X0没差别
是错的
Rnd(1)
Debug.Print
Rnd(-2)
和
Debug.Print
Rnd(-2)
Rnd(1)
结果是不一样的
X等于0
最近生成的数
一般为科学型数值
这个值也是不变的
rnd(x)
省略x不写
就和X0
效果一样
=========================
Randomize
用
number
将
Rnd
函数的随机数生成器初始化,该随机数生成器给
number
一个新的种子值。如果省略
number,则用系统计时器返回的值作为新的种子值。
如果没有使用
Randomize,则(无参数的)Rnd
函数使用第一次调用
Rnd
函数的种子值。
注意
若想得到重复的随机数序列,在使用具有数值参数的
Randomize
之前直接调用具有负参数值的
Rnd。使用具有同样
number
值的
Randomize
是不会得到重复的随机数序列的。
一般在使用rnd获取随机数
都是
randomize
int(rnd*(上限-下限+1)+下限)
这2个函数的X都是省略不写