用C++的random库生成更好的随机数 | 您所在的位置:网站首页 › 随机函数怎么做 › 用C++的random库生成更好的随机数 |
用 C++ 的 random 库生成更好的随机数
C 语言中的 rand() 和 srand()
学习过 C 语言的读者可能熟悉用 rand() 生成随机数的方法,rand() 会返回一个伪随机数,范围在 [0, RAND_MAX) 之间;根据实现的不同,RAND_MAX 的值也会不同,但至少应为 32767。 使用方法如下: #include #include int main() { for (int i = 0; i std::srand(std::time(nullptr)); // use current time as seed for random generator int random_variable = std::rand(); std::cout std::random_device rd; //如果可用的话,从一个随机数发生器上获得一个真正的随机数 std::mt19937 gen(rd()); //gen是一个使用rd()作种子初始化的标准梅森旋转算法的随机数发生器 std::uniform_int_distribution distrib(1, 6); for (int n=0; nr(), r(), r(), r(), r(), r(), r(), r()}; std::mt19937 e2(seed2); std::normal_distribution normal_dist(mean, 2); std::map hist; for (int n = 0; n std::cout |
CopyRight 2018-2019 实验室设备网 版权所有 |