c++生成随机数代码
时间: 2023-12-10 12:32:47 浏览: 85
在C++中,可以使用头文件<random>中的随机数库来生成随机数。其中包括随机数生成器和随机数分布器。下面是一个简单的示例代码:
```
#include <iostream>
#include <random>
int main()
{
// 使用随机设备作为种子
std::random_device rd;
// 使用 Mersenne Twister 引擎
std::mt19937 gen(rd());
// 定义随机数分布器,生成 1 到 100 之间的整数
std::uniform_int_distribution<> dis(1, 100);
// 生成 10 个随机数并输出
for (int i = 0; i < 10; ++i) {
std::cout << dis(gen) << ' ';
}
std::cout << std::endl;
return 0;
}
```
在上面的代码中,我们使用了随机设备作为种子,使用了 Mersenne Twister 引擎作为随机数生成器,使用了 uniform_int_distribution 分布器生成 1 到 100 之间的整数。最后,我们生成了 10 个随机数并输出。
相关问题
c++生成随机数的代码
你可以使用 `<random>` 头文件来生成随机数。以下是一个示例代码:
```cpp
#include <iostream>
#include <random>
int main() {
// 创建一个随机数引擎
std::random_device rd;
std::mt19937 gen(rd());
// 定义随机数分布范围
int min = 1;
int max = 100;
std::uniform_int_distribution<> dis(min, max);
// 生成随机数
int random_num = dis(gen);
// 打印结果
std::cout << "随机数: " << random_num << std::endl;
return 0;
}
```
这段代码使用了 `std::random_device` 作为种子来初始化 `std::mt19937` 随机数引擎。然后,使用 `std::uniform_int_distribution` 定义了一个均匀分布的整数范围。最后,调用 `dis(gen)` 生成随机数。
请注意,由于使用了 `std::random_device`,每次运行程序时都会生成不同的随机数。如果你需要固定的随机数序列,可以使用固定的种子来初始化 `std::mt19937` 引擎。
C++生成随机数的代码
在C++中,你可以使用 `<random>` 和 `<ctime>` 标准库来生成随机数。下面是一个简单的例子,展示了如何生成均匀分布的随机整数:
```cpp
#include <iostream>
#include <cstdlib> // 包含随机数生成函数
#include <ctime> // 包含时间种子
// 初始化随机数生成器
void initialize_random_engine() {
std::srand(std::time(0)); // 使用当前时间作为种子,保证每次程序运行结果不同
}
// 生成指定范围内的随机整数
int generate_random_number(int min, int max) {
static std::default_random_engine generator; // 创建一个全局的随机引擎
return std::uniform_int_distribution<int>(min, max)(generator); // 统一分布生成器
}
int main() {
initialize_random_engine();
int random_num = generate_random_number(1, 100);
std::cout << "Random number between 1 and 100: " << random_num << std::endl;
return 0;
}
```
在这个例子中,`generate_random_number` 函数会返回 `min` 和 `max` 之间的一个随机整数。
阅读全文