dev/cpp/boost/yAx/rnd.cpp

31 lines
830 B
C++
Raw Normal View History

2011-04-07 17:03:45 +04:00
#include <boost/random.hpp>
#include <ctime>
using namespace boost;
double SampleNormal (double mean, double sigma)
{
// выбор генератора случайных чисел
mt19937 rng;
// инициализация генератора числом секунд с 1970 года
rng.seed(static_cast<unsigned> (std::time(0)));
// выбор нужного распределения
normal_distribution<double> norm_dist(mean, sigma);
// привязка генератора к распределению
variate_generator<mt19937&, normal_distribution<double> > normal_sampler(rng, norm_dist);
// пример работы
for(int i=0; i<10; i++)
std::cout<<normal_sampler()<<std::endl;
return normal_sampler();
}
int main()
{
SampleNormal(5,1);
return 0;
}