我想在每次迭代中从特定范围生成一个随机数
for (int i = 0; i < 10; i++)
{
v1[i] = rand() % n;
}
Run Code Online (Sandbox Code Playgroud)
此代码将在0和之间生成一个数字9.但是,我不希望所选的数字与索引相同i.例如,如果我在第一次迭代(即:)i == 1,我希望随机数为0,2,3,4,5,6,7,8,9而不是1.
有人可以帮助我吗?
如果要排除一个数字,只需从可能选择的集合中删除最大数字,如果您碰巧选择了您不想要的数字,请选择最大数字.
例如,如果要选择0到9之间的数字,但不应该是数字1,则选择0到8之间的数字.如果选择1,则选择9.