C++基础之随机数(解密真相,随机真的随机?)

随机数里有真假随机数两种

伪随机数:

rand();返回一个0到上万或者更大的整数(最大是多少,一直没有查到)

不需要头文件

int a = rand()%5;//运行一次得到一个5以内的数
每次运行得到这个数都是一样的,所以说他是伪随机数

真随机数:

有一个叫种子的东西,srand(n),n填一个整数(浮点数也行,不过5.2和5效果没区别),填的每一个整数,代表着一个数字序列

什么叫数字序列呢,就是一串固定的数字

例如我填5,5的数字序列就是20605、15891、11459……是固定不变的,不管运行多少次,在看一个2的序列,这样写的话,还是一个伪随机数

C++基础之随机数(解密真相,随机真的随机?)_第1张图片C++基础之随机数(解密真相,随机真的随机?)_第2张图片

如果我加入头文件time.h

种子写为srand(time(0))代表着获取系统时间,电脑右下角的时间,每一秒后系统时间的改变,数字序列的改变得到的数字不同,这才得带不同的数字,形成了真随机数,即使是真随机数,也是有规律可循

你可能感兴趣的:(●●●●●●基础)