gpt4 book ai didi

c++ - do-while 循环问题 : Try to develop a simple game

转载 作者:行者123 更新时间:2023-11-28 06:34:14 25 4
gpt4 key购买 nike

嗯,我写信是为了制作一个骰子游戏。我试着在这里搜索骰子游戏,但似乎没有一个能回答我的问题。无论如何,这不是掷骰子的问题。这是关于 do while 循环的。我是这个网站的新手,我刚刚通过 Maximum PC Magazine 了解到这一点,所以请多多包涵。我也是编程新手。

这是我的代码:

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;
int main(){

srand(time(NULL));

int userRoll = rand() % 6 + 1 ;
int computerRoll = rand() % 6 + 1 ;
string yesOrNoChoice;
string commandToThrowDie;


do{
cout << "Please enter \"throw\" (lowercase) to roll the die: ";
cin >> commandToThrowDie;
} while(commandToThrowDie != "throw");

do{
cout << "You rolled: " << userRoll << endl
<< "The Computer rolled: " << computerRoll << endl;

if (userRoll < computerRoll){
cout << "You lose. Try again? [Yes/No]: ";
}
if (computerRoll < userRoll){
cout << "You win! Try again? [Yes/No]: ";
}
if (computerRoll == userRoll) {
cout << "It's a draw. Try again? [Yes/No]: ";
}
cin >> yesOrNoChoice;
} while(yesOrNoChoice != "Yes");

system ("pause");
return 0;
}

问题是,在要求用户在 do-while-loop 结束时输入选择后,无论我输入什么,程序都会退出循环,而不是循环回到另一次掷骰子。

结果是这样的:

Screenshot of program run

最佳答案

我复制了你的代码,它编译并完美运行。完全没有意义,但没有问题。我说这是没有意义的,因为当输入"is"时,这就是杀死它的原因。我相信你想要什么 while(yesOrNoChoice == "Yes")。也许将其设置为 != 会让您认为自己的行为有误?此外,您应该使用 if, else if, else 语句,而不仅仅是 if

关于c++ - do-while 循环问题 : Try to develop a simple game,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27013935/

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