随机顺序的连续数字
Consecutive numbers in random order
如何生成一个包含一组连续数字但顺序随机的数组?例如,连续的数字是从 8 到 100(没有重复),我想要的是一个包含所有这些数字的数组,但序列是随机的。
我想 8 和 100 包含在范围内。
#include <algorithm>
#include <numeric>
#include <iterator>
int main()
{
const size_t N = 93;
int a[N];
std::iota( std::begin( a ), std::end( a ), 8 );
std::random_shuffle( std::begin( a ), std::end( a ) );
}
如果 8 是你帖子中的拼写错误,而你的意思是 0,那么代码将看起来像
const size_t N = 101;
int a[N];
std::iota( std::begin( a ), std::end( a ), 0 );
我假设你是学生并且是编程新手,因此应该告诉一些基础知识。
rand() 生成随机数。
如果您希望数字在特定范围内,请采用其模组,例如
rand()%93; // generate random numbers from 0-92
同样地 (rand()%93)+8//将生成 8-100 之间的数字
此外,为了检查重复项,您可以将数字与已存储在数组中的数字进行比较。
相关文章:
- 如何知道n!是否可以表示为三个连续数字的乘法?
- 如何在 c++ 中检查连续片段中数字被 11 整除
- C++ 如何找出数组中最多的连续数字?
- 如何制作 arduino 串行循环(连续接收数字)
- 在随机生成的数组中查找重复的连续数字
- 子数组中两个数字的相同出现(连续)
- 在向量中找到连续数字的更有效方法
- 连续两次写入数字时出现逻辑错误 (C++)
- 不理解连续数字之间的空格代码
- 我如何限制我连续拥有的数字数量
- 给定n个数字,编写一个例程,以在4个连续数字之间找到最大的数字
- 从输入中找到连续十六进制数字的最大数量
- 在序列中查找相似的数字并记录最大连续连胜
- 如何生成没有两个相邻连续数字的排列
- 随机顺序的连续数字
- 返回连续数字的逻辑假设数组包含元素 1,9,2,3,4,9,6,7,8,那么它应该返回 2,3,4,6,7,8
- 非连续内部数字表示上的位移位
- 如何找到序列中的连续数字
- 连续获取 2 个唯一数字
- 字符数字 ['0'.."9'] 需要具有连续的数值吗?