gpt4 book ai didi

c++ - 生成随机数但要求有一定数量

转载 作者:行者123 更新时间:2023-12-02 01:30:50 25 4
gpt4 key购买 nike

我正在尝试创建 4 的序列不同的数字并从 0 随机生成至100但它必须有编号 86 ,这就是我所做的:

#include<iostream>
#include<cstdlib>
using namespace std;

int main()
{
srand((unsigned) time(NULL));

// Loop to get 3 random numbers
for(int i = 0; i < 3; i++)
{
int random = rand() % 101;

// Print the random number
cout << random << endl;
}

cout << 86 << endl;
}

但我不想把86最后,有什么方法可以将其放置在序列中的任意随机位置吗?谢谢

最佳答案

我使用现代 C++ 的方法

#include <algorithm>
#include <iostream>
#include <array>
#include <random>

namespace {

std::default_random_engine generator(std::random_device{}());

int random(int min, int max) {
return std::uniform_int_distribution<int>{min, max}(generator);
}

}

int main() {

std::array<int, 4> elements = {86};
for (int i = 1; i < elements.size(); ++i) {
elements[i] = random(0, 100);
}

std::shuffle(elements.begin(), elements.end(), generator);
for (int nbr : elements) {
std::cout << nbr << "\n";
}

return 0;
}

关于c++ - 生成随机数但要求有一定数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73354186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com