gpt4 book ai didi

Java/使用多种方法创建高/低游戏,卡在返回号上。的猜测

转载 作者:行者123 更新时间:2023-12-02 03:43:51 26 4
gpt4 key购买 nike

我正在创建一个高/低猜测游戏作为研究作业的一部分,而我坚持的部分是将猜测的数量返回到主方法。我们被特别告知,主方法必须打印猜测的次数,而“playGame”方法实际上执行游戏操作。

代码中还有更多内容,一个名为 GiveReponse 的方法,用于检查数字是否正确或过高/过低,但它按预期工作。当我试图打印完成游戏需要多少次猜测时,我得到“找不到符号”。如果在 main 方法中打印它不是那么重要,我会在 playGame 方法中打印金额,但这是不行的。我究竟做错了什么?代码如下所示:

public class HiLo {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("Welcome to classic guessing game of high/low!");

String difficulty = scan.next();

if (difficulty.equals("easy")) {
playGame(10);
} else if (difficulty.equals("medium")) {
playGame(100);
} else if (difficulty.equals("hard")) {
playGame(1000);
}

System.out.println("You won in" + guesses + "attempts.");
}//EndsMain

public static int playGame(int maxNumber) {
Scanner scan = new Scanner(System.in);
int rannr = (int)(Math.random() * maxNumber) +1;
int answer = rannr;
int guess = 0;
int guesses = 0;

System.out.println("Game is starting...");

do {
guess = scan.nextInt();
guesses ++;
giveResponse(answer, guess);

if (answer == guess) {
break;
}
} while (answer != guess);

return guesses;
} //Ends playGame

最佳答案

您的方法 playGame( ) 正在返回一个值,但由于未分配给任何变量,因此这些返回值会丢失...除此之外,代码看起来并不完整:

这个语句不会让你编译:

System.out.println("You won in" + guesses + "attempts.");

因为我在其中看到的唯一猜测变量的作用域是在playGame方法中....

做类似的事情:

public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("Welcome to classic guessing game of high/low!");
int guesses = 0;
String difficulty = scan.next();

if (difficulty.equals("easy")) {
guesses = playGame(10);
} else if (difficulty.equals("medium")) {
guesses = playGame(100);
} else if (difficulty.equals("hard")) {
guesses = playGame(1000);
}

关于Java/使用多种方法创建高/低游戏,卡在返回号上。的猜测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36522303/

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