//My trial program
#include<iostream>
#include<random>
using namespace std;
int main(){
//USed to initialize (seed) the random number generator
random_device sd{};
// The random number generator
mt19937 engine {sd()};
//Uniformly distribute random numbers in [1...10]
uniform_int_distribution <> dis{1, 50};
//Generate a random integer
int x {dis(engine)};
//Print it
cout<<x<<"\n";
return 0;
}
我已經使用上面的代碼來生成1到50之間的隨機數。但是每當我運行程序時,生成的隨機數都是相同的。我正在學習的在線課程有這段代碼,它在教師的clang編譯器上工作得很好。我正在使用gcc編譯器。任何人都可以告訴我需要做什麼嗎?謝謝!!C++ 11個隨機數生成不起作用
不斷更改種子 –
mt19937 engine {sd()};這裏的任何蘭幣值 –
您是否有機會使用MinGW?對於'std :: random_device',這有或曾經有過一些麻煩。 –