c++生成随机数
时间: 2023-07-04 14:06:11 浏览: 95
C++中生成随机数可以使用标准库的`<random>`头文件中的随机数生成器。以下是一个简单的示例代码:
```cpp
#include <iostream>
#include <random>
int main() {
// 创建一个随机数生成器
std::random_device rd;
std::mt19937 gen(rd());
// 定义随机数分布范围
std::uniform_int_distribution<> dis(1, 100);
// 生成随机数
int random_number = dis(gen);
std::cout << "生成的随机数为:" << random_number << std::endl;
return 0;
}
```
以上代码会生成一个1到100之间的随机整数。可以根据需要修改分布范围。
相关问题
c++生成随机数代码
在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++生成随机数负数
要在C语言中生成负数的随机数,可以通过以下步骤实现:
1. 首先,使用rand()函数生成0到RAND_MAX(通常是32767)之间的随机数。
2. 然后,将生成的随机数通过模除运算限制在0到范围的大小之间。例如,要生成-1000到1000之间的随机数,可以使用rand() % 2001。
3. 最后,将限制范围后的随机数减去范围的中间值,即减去1000,得到负数的随机数。例如,可以使用(rand() % 2001) - 1000。
以下是一个示例代码,用于生成范围在-1000到1000之间的随机数:
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
int seed;
cout << "Enter a seed value: ";
cin >> seed;
srand(seed);
int randomNumber = (rand() % 2001) - 1000;
cout << "Random number: " << randomNumber << endl;
return 0;
}
阅读全文