随机函数的生成,在有些时候要生成不同的随机函数,选择一个合适的种子很重要,如何选择种子?

knikcn 2003-11-10 09:41:44
'随机函数生成
Dim Result As Double
Dim RndNum As Long
Dim DateVar As Date
Dim i As Integer

For i = 0 To 9
DateVar = Now
RndNum = CLng(DateVar * 10000)
Result = CDbl(Rnd(RndNum))
Debug.Print Result
Next
'通过时间生成随之函数
不知道有什么更好的方法
...全文
130 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
captainivy 2003-11-10
  • 打赏
  • 举报
回复

Randomize Timer
kimurakenshin 2003-11-10
  • 打赏
  • 举报
回复
Rnd -1
Randomize num
kimurakenshin 2003-11-10
  • 打赏
  • 举报
回复
Randomize 语句


初始化随机数生成器。

语法

Randomize [number]

可选的 number 参数是 Variant 或任何有效的数值表达式。

说明

Randomize 用 number 将 Rnd 函数的随机数生成器初始化,该随机数生成器给 number 一个新的种子值。如果省略 number,则用系统计时器返回的值作为新的种子值。

如果没有使用 Randomize,则(无参数的)Rnd 函数使用第一次调用 Rnd 函数的种子值。

注意 若想得到重复的随机数序列,在使用具有数值参数的 Randomize 之前直接调用具有负参数值的 Rnd。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。
AresChen 2003-11-10
  • 打赏
  • 举报
回复
个人觉得用时间作为随机数的种子已经可以了,如果觉得这样还不够的话,可以用时间、系统运行时间、硬盘序列号等几个值算一个种子出来。

7,773

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧