17.28 write a function. Each call generates and returns a uniformly distributed random unsigned Int.
#include<iostream>#include<vector>#include<random>#include<ctime>using namespace std;int main(){ uniform_int_distribution<unsigned> u; default_random_engine e(); for(size_t i=0;i<10;++i) cout<<u(e)<<" "; cout<<endl; for(size_t i=0;i<10;++i) cout<<u(e)<<" "; cout<<endl;}
17.29 users are allowed to provide a seed as an optional parameter.
17_29.cpp #include<iostream>#include<vector>#include<random>#include<ctime>using namespace std;int main(){ uniform_int_distribution<unsigned> u; default_random_engine e(time(0)); for(size_t i=0;i<10;++i) cout<<u(e)<<" "; cout<<endl; for(size_t i=0;i<10;++i) cout<<u(e)<<" "; cout<<endl;}
17.30 add two parameters this time, indicating that the function allows the minimum and maximum values returned
#include<iostream>#include<vector>#include<random>#include<ctime>using namespace std;int main(){ uniform_int_distribution<unsigned> u(0,9); default_random_engine e(time(0)); for(size_t i=0;i<10;++i) cout<<u(e)<<" "; cout<<endl; for(size_t i=0;i<10;++i) cout<<u(e)<<" "; cout<<endl;}
Random Number engine and distribution