当前位置:首页 > TAG信息列表 > c语言中怎样产生特定数目的随机数haskell中如何抽取随机数?

c语言中怎样产生特定数目的随机数haskell中如何抽取随机数?

c语言中怎样产生特定数目的随机数 haskell中如何抽取随机数?

haskell中如何抽取随机数?

随机数(我指的是伪随机数)是由显性或隐性状态产生的。这意味着在hask::stdg::(随机a)gt(a,a)-gtioa

在给定范围内随机返回a类型的值,全局生成器将被更新。您可以通过元组指定范围。下面的示例返回一个介于a和z之间的随机值,包括a和z:

clt-randomrio(阿,中)

c语言中怎样产生特定数目的随机数 haskell中如何抽取随机数?

可以是任何类型吗?那个这不是真的。在haskell98标准中,随机库只支持bool、char、int、int::

返回a类型的随机数(a可以是任何类型?见上),全局生成器也会更新。以下示例返回doubl::iodoubl::io[float]randomstuffdonlt-randomrio(1,7)序列(replicat::国际燃气轮机标准发电机

用随机种子创建一个生成器。

随机::(随机a,随机g)

用生成器生成给定范围的无限列表。示例:使用42作为随机种子,返回一个包含a和z(从a到z)的无限列表:

随机数(a,z)(mkstdg::(随机a,随机g)

用给定的生成器生成一个无限的随机数列表。例如,使用42生成一个双精度类型列表作为随机种子:

::[双精度]

随机数的范围由类型决定。需要查文档确定具体范围,或者直接用randomrs。

注意这些都是功能性的——意思是没有副作用,特别是生成器不会更新。如果你用一个生成器生成第一个列表,然后用同一个生成器生成第二个列表…

gmkstdg::[doubl::[doubl::randomg::[float]-gt[[float]]work(r:rs)letntruncat:workys

除了必要的打印操作之外,这纯粹是功能性的。它用生成器生成一个无限列表,然后用这个无限列表生成另一个无限列表作为答案,最后把第一个作为返回值。

我这样做是因为尽管我们今天的角色会产生一个随机数,但你通常需要很多。希望这个例子能对你有一点帮助。

上面的代码通过使用一个生成器来创建一个包含float的无限列表。截取第一个值,将这个值展开为1到7,然后使用剩余的列表生成答案。换句话说,把输入列表分成(r:rs),r决定生成列表的长度(1到。7)、答案会在rs之后计算。

::(随机g)gtg-gt(g,g)

用一个随机种子创建两个不同的生成器,否则重用同一个种子是不明智的。

gmkstdgen42(ga,gb)拆分g-不要在其他地方使用g

如果您想要创建两个以上的发生器,可以对其中一个新发生器使用拆分:

gmkstdgen42(ga,g)splitg(gb,gc)splitg-不要在其他地方使用g,g

我们可以用split得到两个生成器,这样就可以生成两个随机列表。

clt-randomrio(a,z)0

它将生成器一分为二,然后生成两个列表。

我在主程序中硬编码了随机种子。正常情况下,你可以从其他地方获得随机种子——从输入,从文件,从时间,或者从一些设备。

这些都可以在主程序中实现,因为它们可以在iomonad中访问。

您还可以通过getstdgen获得全局生成器:

clt-随机里奥(a,z)1

【c语言】随机数种子的设置?

这方面我之前了解过一点,不知道能不能帮到你。

我记得函数srand是用来生成一个范围的,应该是从一个标准时间到现在时间的秒的范围。然后rand函数从这个范围中取一个随机值。他的返回值是一个介于0和rand_max之间的随机数,在stdlib.hidon我记不清具体有多少了。。

生成器列表种子范围


湖北自考之家 websoft网络软件专家

  • 关注微信关注微信

猜你喜欢

热门标签

苹果手机日历生日怎么删除 微信上刷脸支付怎么打开介绍 word前几页竖版最后一页横版 箭头符号怎么用 php计算数组中最大数和最小数的差 格式工厂可以转换kgm文件吗 国产电平转换芯片 三星手机屏幕坏了怎么导出数据 windows更新清理删了C盘没变 Excel众数的函数 拉杆箱的密码锁坏了哪里能换 怎么看小米是不是正品 少儿启蒙教育 procreate怎么保存动画procreate存不了png? 太阳能led路灯定时 vivo已成功安装怎么在设置中确认vivoy52s怎么确定是新手机? word里面表格自动换页怎么办word表格重复标题行就跳到下一页?介绍 wps中输入数学公式WPS表格中的公式怎么设置啊?介绍 芒果tv为什么不能全屏播放应用处于后台无法投屏怎么办?介绍 中国联通怎么网上验证联通手机号更改实名信息?介绍 企业微信如何建立商品图册蛋糕店如何开劈甜品台市场?介绍 浩辰cad测量面积全教程cad怎么快速计算墙的体积和表面积? 苹果怎么关闭所有应用苹果12向上滑动关闭后台怎么设置? 怎么打开adr文件国企股票有退市可能吗? 王者荣耀浏览器 中国移动积分兑换话费怎么操作 up主与用户之间为什么不能发言了b站为什么直播间发不出评论?介绍 支付宝2022年度账单入口支付宝没有年度报告了吗?介绍 什么软件可以看实时风向图打麻将的过程中发生过什么尴尬或有趣的事情?介绍 微信如何发送出去文件微信怎么直接发文件夹

微信公众号