[0、1)の範囲の実数の一様分布から数を生成しようとしています。しかし、コンパイラは[0、1)の範囲外の数値を生成しています。
コードは次のとおりです。
int main(void) {
// Solver solve;
mt19937 mteng;
mteng.seed(rdtsc());
uniform_real<double> uniRealD;
double randomNum;
for (int index = 0; index < 10; index++){
randomNum = uniRealD(mteng);
if(randomNum<0.5)
cout<<index<<" no. random number is: "<<randomNum<<endl;
else
cout<<"number generate is not in range"<<endl;
}
return 0;
}
コードのどこが間違っている可能性があるかについてのコメントはありますか?rdtsc()
シードとして使用しています。