C++ Wiki

2015.07.15

Tags: C++11

乱数の生成

サンプルコード

#include <iostream>
#include <random>

int main()
{
  std::random_device seed;
  std::mt19937 mt(seed());

  std::cout << "uniform_int_distribution:" << std::endl;
  std::uniform_int_distribution<int> d1(0, 1);
  for(int i=0; i<10; ++i){
    std::cout << d1(mt) << std::endl;
  }

  std::cout << "uniform_real_distribution:" << std::endl;
  std::uniform_real_distribution<double> d2(0, 1);
  for(int i=0; i<10; ++i){
    std::cout << d2(mt) << std::endl;
  }

  return 0;
}

実行結果

uniform_int_distribution:
0
0
1
0
1
1
1
1
1
1
uniform_real_distribution:
0.642207
0.836787
0.471768
0.664599
0.946934
0.337389
0.243916
0.37286
0.560881
0.821232