vb.net中生成随机数 vb随机数生成方法代码

编写一个 VB.NET 程序,产生 100 个 100 以内的随机数,将他们从大到小排序后输出

Private Sub Command1_Click()

成都创新互联专注于和县企业网站建设,响应式网站建设,成都商城网站开发。和县网站建设公司,为和县等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务

Dim a(1 To 100) As Integer

Dim i As Integer, j As Integer, k As Integer

For i = 1 To 100 '给数组a一百个元素赋值,并换每行十个数字输出来窗体上

a(i) = Int(Rnd * 101)

k = k + 1

Print Tab((k - 1) * 5); a(i);

If k = 10 Then k = 0: Print

Next i

Print

Print

For i = 100 To 2 Step -1 '用冒泡排序法对数组进行排序

For j = 1 To i - 1

If a(j) a(j + 1) Then

t = a(j): a(j) = a(j + 1): a(j + 1) = t

End If

Next j

Next i

For i = 1 To 100 '输出排好序的数组

k = k + 1

Print Tab((k - 1) * 5); a(i);

If k = 10 Then k = 0: Print

Next i

End Sub

《VB.NET》中的“Randomize(x)”和“Rnd(x)”

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没差别

是错的

Print

Rnd(1)

Debug.Print

Rnd(-2)

Debug.Print

Rnd(-2)

Print

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都是省略不写

vb.net中产生三位正整数的随机数的程序写法

'项目:VB中产生在一定正整数范围内的不重复的随机数'作者:qq15495835Private Sub Command1_Click() Max = 100 '随机数上限值 Min = 1 '随机数下限值 Amount = 10 '产生号码数量(数量值应小于随机数上限值-随机数下限值)否则会产生死循环 ReDim a(Amount) Randomize For i = 0 To Amount a(i) = Int((Max - Min + 1) * Rnd + Min) For j = 0 To i If i j And a(i) = a(j) Then i = i - 1 Next Next Text1 = Join(a, vbCrLf)End Sub'请采纳参考!谢谢!

vb.net怎么随机生成5个不同是数(1-33内的数),大神求救

想要生成多少个都行。

Randomize()随机打乱

dim a1 as integer=cint(rnd()*32))+1

dim a2 as integer=cint(rnd()*32))+1

dim a3 as integer=cint(rnd()*32))+1

dim a4 as integer=cint(rnd()*32))+1

dim a5 as integer=cint(rnd()*32))+1

怎么用vb.net随机产生5个不同的数,范围1-33,求帮忙改一下

Private Sub Command1_Click()

Dim num(6) As Integer

Dim i As Integer, j As Integer

Dim tmp As Integer

Randomize '防止每次生出随机数一样

For i = 0 To 5

num(i) = Int(Rnd * 53) + 1

Next

PrintNum "新生成的6个随机数为:", num()

For i = 0 To 5

For j = 0 To 5

If num(j) num(j + 1) Then

tmp = num(j)

num(j) = num(j + 1)

num(j + 1) = tmp

End If

Next

Next

PrintNum "排序后的6个随机数为:", num()

End Sub


网站栏目:vb.net中生成随机数 vb随机数生成方法代码
文章位置:http://scyanting.com/article/hjigsc.html