加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在lua中找到一个随机数

发布时间:2020-12-14 21:46:16 所属栏目:大数据 来源:网络整理
导读:我试图使用lua产生一个随机数,但它只是吐出最低值.例如,如果我运行: x = math.random(17,41) print(x) 它返回: 17 怎么了? 解决方法 Lua使用C运行时库伪随机数生成器.其属性取决于您的平台.例如,在某些版本的Windows上,生成器始终在伪随机序列的同一点进
我试图使用lua产生一个随机数,但它只是吐出最低值.例如,如果我运行:

x = math.random(17,41)  
print(x)

它返回:

17

怎么了?

解决方法

Lua使用C运行时库伪随机数生成器.其属性取决于您的平台.例如,在某些版本的Windows上,生成器始终在伪随机序列的同一点进行初始化,因此在运行程序时始终可以获得相同的值序列(参见 http://msdn.microsoft.com/en-US/library/f0d4wb4t.aspx).

您可以使用math.randomseed在其他地方启动伪随机序列.每次运行程序时,都可以使用os.time以不同的值初始化它(假设在运行之间允许至少一秒钟).

另请注意,在某些Windows C运行时库中,调用srand(或Lua中的math.randomseed)后得到的第一个伪随机值非常依赖于您传递的值.所以我建议调用math.random一次并在调用math.randomseed后忽略它的结果.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读