gpt4 book ai didi

c++ - HILO 游戏,找不到号码时

转载 作者:行者123 更新时间:2023-11-28 01:43:05 26 4
gpt4 key购买 nike

我正在为学校开发一个 HILO 游戏,程序通过询问数字是高还是低来猜测用户的数字。我有代码在它猜对的地方工作,但我还需要一个案例,当用户“作弊”时,数字被猜到但用户再次选择高或低。这就是我的代码:

    void GuessNumber(int lowVal, int highVal)
{
int midVal = 0;
char userAnswer = '-';

midVal = (highVal + lowVal) / 2;

cout << "Is it " << midVal << " (l,y,h)? " << endl;
cin >> userAnswer;

if ((userAnswer != 'l') && (userAnswer != 'h'))
{
cout << "Your number is " << midVal << endl;
}
else {
if (userAnswer == 'h')
{
GuessNumber(lowVal, midVal);
}
else if (userAnswer == 'l')
{
GuessNumber(midVal, highVal);
}
}

return;
}

最佳答案

除非你不知道,否则你不应该问用户更高/更低。因此,您唯一可以检测到作弊的情况是,当您知道答案是两个值(N 或 N+1)之一,并且您询问用户它是否为 N 而他们说它较低(或者您询问它是否为 N+1 而他们说得更高)。

所有其他情况都不值得担心,因为要么你已经知道确切的答案(用户不能欺骗你,只是告诉他们你知道答案),要么至少还剩下三个可能的答案(在这种情况下任何回应可能是正确的)。

关于c++ - HILO 游戏,找不到号码时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46385907/

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