在tic-tac脚趾代码中,我有一个do-while循环来检查其中一个玩家是否已经赢了..所以,这样的事情
do{
//does some player's input and other things..
}while(!win(x));
现在,最大的问题是在这个循环中,它将继续循环直到其中一个玩家获胜。 现在,我如何使用相同的do-while循环检查平局?
我可以这样做:do{
//still the same checking
}while(!win(x)||!loose(x));
我确实尝试了这个,但它只是搞砸了代码。我怎么可能在游戏中找到平局?
由于
答案 0 :(得分:2)
您的逻辑稍微偏离 - 从以下位置更改循环条件:
do{
//still the same checking
}while(!win(x)||!loose(x));
为:
do{
//still the same checking
}while(!win(x)&&!loose(x));
或者可能是一个更容易理解但相当的替代方案:
do{
//still the same checking
}while(!(win(x)||loose(x)));
答案 1 :(得分:0)
当你写作时:
!win(x)||!loose(x)
你说没赢或不输,循环将在第一时间终止。您可以使用以下内容:
do{
//still the same checking
} while (!win(x)&&!loose(x));
或
do{
//still the same checking
} while (!(win(x)||loose(x)));