gpt4 book ai didi

java - 创建一个java程序猜谜游戏

转载 作者:行者123 更新时间:2023-12-02 07:12:22 25 4
gpt4 key购买 nike

编写一个程序来生成 1 – 100 之间的随机数并将其保存为 secret 数字。然后程序将检查用户是否可以猜出 secret 数字。用户可以继续猜测数字,直到找到数字为止,或者用户可以输入 0,这将终止程序。

每次用户进行猜测时,程序都会报告如下:

  1. 太高或太低(超过 30 折)
  2. 高或低(相差 10 到 30 分)
  3. 有点高或有点低(折扣少于 10 分)

如果 secret 数字是 74 并且用户输入 26,程序将打印“Way Too Low”。如果用户随后输入 65,则程序将打印“A Little Low

我被 if 语句困住了,也许我的结构不正确。我不确定。

import java.util.Scanner;
public class SecretNumber {
public static void main(String[] args){
int random1, answer;
Scanner input = new Scanner(System.in);

random1 = (int)(Math.random()*10);
System.out.print(random1);

System.out.println("Guess the number");
answer = input.nextInt();

while(answer != 0) {

if (answer > (random1 + 30)){

System.out.println("Way to high");
}
else if ( answer > ( random1 - 30)){

System.out.println("Way to low");

}
else if (answer > random1 + 10 && answer < random1 + 30){

System.out.println("High");

}
else if (answer > random1 - 10 && answer < random1 - 30 ){

System.out.println("Low");

}
else if ( answer > random1 + 10){

System.out.println("A little high");
}
else if ( answer < random1 - 10){

System.out.println("A little low");

}
else if ( answer == random1){

System.out.println("That is correct");
System.exit(0);
}
else {
System.out.println("Guess the number");
answer = input.nextInt();
}
}
}
}

最佳答案

将最终 else block 中获取输入的行移至 else 后面(但仍在循环内),它将正常工作。

您想要这样做的原因是因为它进入了再次猜测条件之一(例如,“太低了!”),然后永远不会进入最终的 else,从而导致无限循环。

    while (answer !=0){

// ommitted

else if ( answer == random1){

System.out.println("That is correct");
System.exit(0);
}

System.out.println("Guess the number");
answer = input.nextInt();
}

关于java - 创建一个java程序猜谜游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15350022/

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