C++乱数の生成方法

3986 ワード

乱数の生成1.最も単純な乱数生成は乱数を生成して範囲を設定する必要がなければrand()を使えばよいがrand()は乱数値を返し、範囲は0からRAND_MAX間.RAND_MAXはstdlibで定義.h、その値は2147483647である.コードは次のとおりです.
# include 

using namespace std;
 int main()
 {
    for(int i=0;i<10;i++)
    {
        cout<10    :
41
18467
6334
26500
19169
15724
11478
29358
26962
24464

2.一定範囲内の乱数を取得する場合は、上に生成した乱数を余剰操作すればよい.コードは次のとおりです.
# include 

using namespace std;
 int main()
 {
    for(int i=0;i<10;i++)
    {
        cout<10<1
7
4
0
9
4
8
8
2
4

3.ランダムに生成された小数を取得し、上の操作に基づいて、除算操作をすればよい.コードは次のとおりです.
# include 

# define    NUMMOD  20000 
# define    NUMDEV  10000.0
using namespace std;
 int main()
 {
    for(int i=0;i<10;i++)
    {
        cout<0.0041
1.8467
0.6334
0.65
1.9169
1.5724
1.1478
0.9358
0.6962
0.4464

4.rand()関数を実行するたびに生成される乱数は変わらず、srand()関数を使用するとrand()関数に乱数シードを生成でき、rand()関数を実行するたびに結果が大きく異なります.
# include 
# include

# define    NUMMOD  10 
//# define  NUMDEV  10000.0
using namespace std;
 int main()
 {
    srand(time(0));//);//time(0)         ( 1970.1.1    ),  : 
    for(int i=0;i<10;i++)
    {
        cout<"pause");
 }

これにより、実行するたびに異なる乱数が発生します.