[英]Can someone help me with this java code? Loop error
我不熟悉编程,正在尝试制作更高或更低的游戏,但是有一些问题。 首先,我想让程序在猜对卡时循环,即选择较低的选项,并且较低。 但是,它在第二个循环后崩溃,什么也没有发生。 游戏结束后,我会选择再次玩,什么都没有发生。 如果有人可以帮助我解决这些问题,将不胜感激。 谢谢
import
尝试这个 :
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int card = 0;
int cardNext;
String userResponse;
String userPlayAgain;
boolean userGuessedRight = true;
do {
do {
Random randomNumbers = new Random();
card = randomNumbers.nextInt(13 - 1 + 1) + 1;
System.out.println("Card is " + card);
System.out.print("Higher or Lower?");
cardNext = randomNumbers.nextInt(13) + 1;
userResponse = scan.next();
userGuessedRight = (userResponse.equalsIgnoreCase("H") && cardNext >= card)
|| (userResponse.equalsIgnoreCase("L") && cardNext <= card);
if (userGuessedRight) {
System.out.println("Card is " + cardNext);
System.out.print("Higher or Lower?");
userResponse = scan.next();
} else {
break;
}
} while (userResponse.equalsIgnoreCase("H") && cardNext < card || userResponse.equalsIgnoreCase("L") && cardNext > card);
System.out.println("Card is " + cardNext);
System.out.println("Card is higher/lower you lose – play again? Y/N : ");
userPlayAgain = scan.next();
} while (userPlayAgain.equalsIgnoreCase("Y"));
do {
if (userPlayAgain.equalsIgnoreCase("N"))
{
System.out.print("Thank You.");
break;
}
} while (!userPlayAgain.equalsIgnoreCase("Y"));
scan.close();
}
编辑
这是输出:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.