在C++中,可以使用以下方法生成服从高斯分布的随机数:
- 使用C++标准库中的normal_distribution类:
#include#include int main() { std::random_device rd; std::mt19937 gen(rd()); std::normal_distribution distribution(mean, std_deviation); for (int i = 0; i < 10; ++i) { std::cout << distribution(gen) << std::endl; } return 0; }
在上面的代码中,mean表示高斯分布的均值,std_deviation表示标准差。
- 使用Boost库中的normal_distribution类:
#include#include int main() { boost::mt19937 gen; boost::normal_distribution distribution(mean, std_deviation); for (int i = 0; i < 10; ++i) { std::cout << distribution(gen) << std::endl; } return 0; }
在上面的代码中,mean表示高斯分布的均值,std_deviation表示标准差。需要安装Boost库才能使用这种方法。
这两种方法都可以用来生成服从高斯分布的随机数。