srand()
という関数が提供されています。srand()
関数は乱数生成器のシード値を設定するために使用されます。シード値は乱数生成器の出力を決定するための初期値であり、同じシード値を使用すると同じ順序の乱数が生成されます。
一般的な方法として、time(NULL)
関数を使用して現在の時刻をシード値として指定することができます。time(NULL)
関数は現在の時刻を表す整数値を返します。この値は実行ごとに異なるため、乱数生成器のシード値として適しています。
以下に、srand(time(NULL))
の使用例を示します。
#include <cstdlib>
#include <ctime>
int main() {
// シード値を設定
srand(time(NULL));
// 乱数の生成
int random_number = rand();
// 生成された乱数の表示
std::cout << "乱数: " << random_number << std::endl;
return 0;
}
上記のコードでは、srand(time(NULL))
を使用して乱数生成器のシード値を設定しています。その後、rand()
関数を呼び出して乱数を生成し、それを表示しています。
注意点としては、srand(time(NULL))
を複数回呼び出すと、同じシード値が使用される可能性があるため、生成される乱数が予測可能になることです。そのため、通常はプログラムの実行中に一度だけ srand(time(NULL))
を呼び出すことが推奨されます。
以上が、C++で srand(time(NULL))
を使用して乱数生成器のシード値を設定する方法とその目的についての解説です。