早教吧作业答案频道 -->其他-->
为啥我的c++产生随机数的函数不起作用呢?
题目详情
为啥我的c++产生随机数的函数不起作用呢?
▼优质解答
答案和解析
那是当然啦.你用的是时间做随机数种子,也就是说在1s中之内,你调用了多次生成随机数的函数.而这个随机数是伪随机的,也就是可以重复得到的.而你的随机数种子没变,所以就得到差不多大小的咯.只要你把srand(time(NULL));这句注释掉,你就会看到生成的不是差不多一样的了.追问:
但是这些数是有周期的呀,在我的机器上每21999就会产生一个周期回答:
这个本来就是伪随机的.肯定不可能做到真正的随机啦.你只能尽可能的去逼近真随机,当达到你需要的精度就可以了.就好像你在用π来算圆的周长面积等的时候,你永远得不到一个确切的能够在计算机上表示出来的结果,只要达到你的精度,那就可以认为是结果了.至于怎么去逼近,一是可以用算法来逼近,二是可以用自带的,设置随机数种子.种子不同,得到的随机数序列的近似度也是不同的.
但是这些数是有周期的呀,在我的机器上每21999就会产生一个周期回答:
这个本来就是伪随机的.肯定不可能做到真正的随机啦.你只能尽可能的去逼近真随机,当达到你需要的精度就可以了.就好像你在用π来算圆的周长面积等的时候,你永远得不到一个确切的能够在计算机上表示出来的结果,只要达到你的精度,那就可以认为是结果了.至于怎么去逼近,一是可以用算法来逼近,二是可以用自带的,设置随机数种子.种子不同,得到的随机数序列的近似度也是不同的.
看了 为啥我的c++产生随机数的函...的网友还看了以下:
求地道点的英语指导一个词~我想表达我想变成一个好人这个“好人”想表达城yes-man唯唯诺诺的人带点 2020-03-30 …
设A,B,C为三个事件,用A,B,C的运算关系表示下列个事件:(1)A发生,B与C不发生(2)A与 2020-04-05 …
六个事件互不干扰互不影响,每个事件发生的概率都是50%.发生用1表示,不发生用0表示,我想知道六个 2020-06-03 …
辗转反侧的痛不欲生,用英语怎么说? 2020-06-16 …
(数学题)设A,B,C为三个事件,用A,B,C表示下列事件:1)A,B,C中恰有一个发生2)A,B 2020-06-27 …
关于英语作文.青少年近视原因,用眼时间过长,用眼不卫生,用脏手脏毛巾擦,乘车,强光下看书,缺乏眼保 2020-06-30 …
用概率A.B.C表示仅有一个事件发生A.B.C为三个事件,用A.B.C表示以下事件:1、仅有一个事 2020-07-13 …
设A,B,C为三事件,用A,B,C的运算关系表示下列各事件.(1)A发生,B与C不发生.(2)A与B 2020-11-05 …
黄河断流、土地荒漠化等现象说明()A.可再生资源是“取之不尽、用之不竭”的B.非可再生资源不能利用, 2020-11-22 …
青霉素等抗生素能用来治疗疾病,下列有关抗生素的叙述中正确的是()A.抗生素虽能用来治病,但使用不当也 2020-12-20 …