C ++で乱数を生成する方法は何ですか?
C++では、ランダムな数を生成するために以下の方法が利用できます:
- rand()を使用する標準ライブラリ関数:rand()関数を使用すると疑似乱数を生成することができます。まず、srand()関数を使用してランダム数の種を設定する必要があります。time()関数を使用して現在の時間を種として取得し、その後、rand()関数を呼び出してランダムな数値を生成します。
コード例:
#include <cstdlib>
#include <ctime>
#include <iostream>
int main() {
// 设置随机数种子
srand(time(0));
// 生成随机数
int randomNumber = rand();
// 输出随机数
std::cout << "Random number: " << randomNumber << std::endl;
return 0;
}
- C++11の乱数ライブラリの使用:C++11では、より高品質な乱数生成器やさまざまな乱数分布関数が提供されています。std::random_deviceをシードとして使用し、std::mt19937を乱数エンジンとして使用して、さまざまな分布関数と組み合わせてさまざまな種類の乱数を生成することができます。
サンプルコード:
#include <random>
#include <iostream>
int main() {
// 设置随机数引擎和分布函数
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<int> dis(1, 6);
// 生成随机数
int randomNumber = dis(gen);
// 输出随机数
std::cout << "Random number: " << randomNumber << std::endl;
return 0;
}
C++でランダムな数を生成するための2つの一般的な方法があります。実際のニーズに合わせて適切な方法を選択できます。