Java 猜谜游戏又玩麻烦了
好的,我试过一种方法,但每次我出于某种原因输入一个数字时,它都会显示“你想再玩一次吗?”。这是我到目前为止所拥有的。我还能做些什么,这样只有在用户猜到正确答案后,它才会询问他/她是否想再次玩Java 猜谜游戏又玩麻烦了,java,if-statement,while-loop,Java,If Statement,While Loop,好的,我试过一种方法,但每次我出于某种原因输入一个数字时,它都会显示“你想再玩一次吗?”。这是我到目前为止所拥有的。我还能做些什么,这样只有在用户猜到正确答案后,它才会询问他/她是否想再次玩 import java.util.Random; import java.util.Scanner; public class GuessNumber { public static void main(String[] args) { Scanner scan = new S
import java.util.Random;
import java.util.Scanner;
public class GuessNumber {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
Random rand = new Random();
int number = rand.nextInt(100) + 1;
int guess;
System.out.println("Guess the number between 1 and 100\n");
guess = scan.nextInt();
while (true) {
if(guess < number)
System.out.println("Higher!");
else if(guess > number)
System.out.println("Lower!");
else if (guess == number){
System.out.println("Correct!");
}
guess = scan.nextInt();
}
}
}
import java.util.Random;
导入java.util.Scanner;
公共类猜测数{
公共静态void main(字符串[]args){
扫描仪扫描=新扫描仪(System.in);
Random rand=新的Random();
整数=rand.nextInt(100)+1;
智力猜测;
System.out.println(“猜测介于1和100之间的数字\n”);
guess=scan.nextInt();
while(true){
如果(猜测<数字)
System.out.println(“更高!”);
否则如果(猜测>数字)
System.out.println(“Lower!”);
else if(猜测==数字){
System.out.println(“正确!”);
}
guess=scan.nextInt();
}
}
}
正确时,您需要退出while
要执行此操作,请在该行之后执行以下操作:
System.out.println("Correct!");
添加另一行,如下所示:
break;
主要是出于好玩,我实现了一个游戏,它符合你想要做的事情的描述。代码不是最干净/最有效的,但它确实有效 看看它,看看你是否能解决你的问题
import java.util.Random;
import java.util.Scanner;
public class GuessingGame {
public static void main(String[] args) {
System.out.println("Guess the number between 1 and 100");
playGuessingGame();
while (true) {
System.out
.println("Do you want to play again? Type y / n and hit enter");
Scanner scan = new Scanner(System.in);
String playAgain = scan.next();
if (playAgain.charAt(0) == 'y') {
System.out.println("Okay, I picked a new number. Good luck!");
playGuessingGame();
} else {
System.out.println("Thanks for playing!");
break;
}
}
}
public static void playGuessingGame() {
Scanner scan = new Scanner(System.in);
Random rand = new Random();
int guess;
int number = rand.nextInt(100) + 1;
guess = scan.nextInt();
while (guess != number) {
if (guess < number)
System.out.println("Higher!");
else if (guess > number)
System.out.println("Lower!");
else if (guess == number) {
System.out.println("Correct!");
}
guess = scan.nextInt();
}
}
}
import java.util.Random;
导入java.util.Scanner;
公开课猜谜游戏{
公共静态void main(字符串[]args){
System.out.println(“猜测1到100之间的数字”);
玩猜谜游戏();
while(true){
系统输出
.println(“是否要再次播放?键入y/n并按enter键”);
扫描仪扫描=新扫描仪(System.in);
String playreach=scan.next();
if(playreach.charAt(0)='y'){
System.out.println(“好的,我选了一个新号码。祝你好运!”);
玩猜谜游戏();
}否则{
System.out.println(“谢谢玩!”);
打破
}
}
}
公共静态无效playGuessingGame(){
扫描仪扫描=新扫描仪(System.in);
Random rand=新的Random();
智力猜测;
整数=rand.nextInt(100)+1;
guess=scan.nextInt();
while(猜测!=数字){
如果(猜测<数字)
System.out.println(“更高!”);
否则如果(猜测>数字)
System.out.println(“Lower!”);
else if(猜测==数字){
System.out.println(“正确!”);
}
guess=scan.nextInt();
}
}
}
试试这个
class GuessNumber {
static Random rand = new Random();
static Scanner scan = new Scanner(System.in);
static int number;
public static void main(String[] args) {
playGame();
}
public static void playGame() {
number = rand.nextInt(100) + 1;
System.out.println("Guess the number between 1 and 100");
while (true) {
int guess = scan.nextInt();
if (guess < number) {
System.out.println("Higher!");
} else if (guess > number) {
System.out.println("Lower!");
} else if (guess == number) {
System.out.println("Correct!");
System.out.println("Do you like to play again?[1 for Yes/0 for No]");
int val = scan2.next();
if (val == 1)
playGame();
else
break;
}
}
}
}
是的,这个很好!但我删除了System.out.println(number);所以它会在运行时显示数字it@user4068770对不起,弄错了。我把它只是为了调试的目的。我忘了在发布答案之前删除它。现在我把它取下来了。希望这对你有帮助。请投票选出对你有帮助的答案,如果有任何答案解决了你的问题,请将其标记为“回答它不允许我”,因为我没有15+代表
else if (guess == number) {
System.out.println("Correct!");
Scanner scan2 = new Scanner(System.in);
System.out.println("Do you like to play again?[Y/N]");
String val = scan2.next();
if (val.equalsIgnoreCase("Y"))
playGame();
else
break;
}