【发布时间】:2019-03-03 18:02:19
【问题描述】:
这是我制作的猜谜游戏的代码。我的计数器没有增加超过 1。我从单独的控制器类传递参数选择和生成的数字。 do while 循环是否应该在控制器类中?
public String startGuessingGame(int choice, int generatedNumber) {
int count = 0;
final int attempts = 4;
String result = null;
do {
count++;
if (choice == generatedNumber) {
result = "Attempt " + count + " "
+ "- You have guessed the correct number!";
}
else if (choice > 50 || choice < 0) {
result = "Out of range. "
+ "\nPlease choose a number between 1 and 50.";
}
else if (choice > generatedNumber) {
result = "Attempt " + count + " "
+ " - You have guessed too high!";
}
else if (choice < generatedNumber) {
result = "Attempt " + count + " "
+ "- You have guessed too low!";
}
if (count == attempts) {
result = "You are out of guesses! The number was " + generatedNumber;
}
}
while(count < attempts);
return result;
}
}
【问题讨论】:
-
这里实际上没有循环。我在任何地方都没有看到 for、while 或 do-while 语句。
-
没有循环,就没有重复。你必须有一个循环。您应该确保检查循环中的正确条件。
-
用循环发布你拥有的代码,因为你肯定需要一个循环,所以更有意义地帮助你
-
抱歉,编辑的代码在上面
-
我的错,我应该早点看到这个,你需要让你在方法
startGuessingGame之外循环,或者让用户在方法内做出新的选择。现在将有一个选择,该方法将计数为 4(对于相同的选择)并退出。