我要解决的问题是在用户向数组中输入值时检查数组。具体说明是:使用单独的方法进行检查;该方法必须首先对数组进行排序;重复检查必须实时执行,这意味着用户不会先输入所有值,然后数组返回并检查它们。我环顾四周,虽然我想出了如何排序,但是我对输入每个值时如何检查重复项感到完全困惑。谁能在正确的思维方向上推动我?
这是我在分配范围内完成的工作:
void getLottoPicks(int numbers[])
{
cout << "Please enter your 7 lotto number picks between 1 and 40: " << endl;
for (int i = 0; i < SIZE; i++)
{
cout << "Selection #" << i + 1 << endl;
cin >> numbers[i];
while (numbers[i] < 1 || numbers[i] > 40)
{
cout << "Please choose a number between 1 and 40: " << endl;
cin >> numbers[i];
}
for (int j = 0; j < i; j++)
{
while (numbers[i] == numbers[j])
{
cout << "You have already picked that number. Enter a different one: " << endl;
cin >> numbers[i];
}
}
}
}
它可以编译并运行,没有任何错误(无论如何我都还没有发现)。如果有人有任何反馈,我们将不胜感激。我知道这种算法效率很低,但是我们的数组只有7个值,这就是我们要的。最初,我认为它必须进行排序,但这仅在我们选择在其他函数中进行检查时才需要。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句