【发布时间】:2015-09-28 01:59:40
【问题描述】:
我正在编写一个 java 代码,要求用户猜测计算机的随机数,这很好,但是,我想做的是有一条消息,该消息对应于用户的猜测次数。
例如,如果用户在 1 次尝试中猜到了随机数,则会输出“Excellent!”如果用户在 2-4 中猜到了答案,则尝试“Good Job”等等..
我想我什么都没试过,因为我不确定在哪里粘贴代码?
我知道如果guess == 1 则必须这样做,否则如果代码> 1
这是我更新的代码,它以我创建它所需的确切方式运行和编译。感谢大家的帮助!
public static void main(String[] args) {
Random rand = new Random();
int compNum = rand.nextInt(100);
int count = 0;
Scanner keyboard = new Scanner(System.in);
int userGuess;
boolean win = false;
while (win == false ){
System.out.print("Enter a guess between 1 and 100: ");
userGuess = keyboard.nextInt();
count++;
if(userGuess < 1 || userGuess > 100){
System.out.println("Your guess is out of range. Pick a number between 1 and 100.");
System.out.println();
}
else if (userGuess == compNum){
win = true;
System.out.println("Congratulations! Your answer was correct! ");
}
else if (userGuess < compNum){
System.out.println("Your guess was too low. Try again. ");
System.out.println();
}
else if (userGuess > compNum){
System.out.println("Your guess was too high. Try again. ");
System.out.println();
}
}
if(count == 1){
System.out.println();
System.out.println("I had chosen " + compNum + " as the target number.");
System.out.println("You guessed it in " + count + " tries.");
System.out.println("That was lucky!");
}
else if (count > 1 && count <= 4){
System.out.println();
System.out.println("I had chosen " + compNum + " as the target number.");
System.out.println("You guessed it in " + count + " tries.");
System.out.println("That was amazing!");
}
else if (count > 4 && count <= 6){
System.out.println();
System.out.println("I had chosen " + compNum + " as the target number.");
System.out.println("You guessed it in " + count + " tries.");
System.out.println("That was good.");
}
else if (count > 6 && count <= 7){
System.out.println();
System.out.println("I had chosen " + compNum + " as the target number.");
System.out.println("You guessed it in " + count + " tries.");
System.out.println("That was OK.");
}
else if (count > 7 && count <= 9){
System.out.println();
System.out.println("I had chosen " + compNum + " as the target number.");
System.out.println("You guessed it in " + count + " tries.");
System.out.println("That was not very good.");
}
else if (count > 10){
System.out.println();
System.out.println("I had chosen " + compNum + " as the target number.");
System.out.println("You guessed it in " + count + " tries.");
System.out.println("This just isn't your game.");
}
}
}
【问题讨论】:
-
您需要做的是向我们展示有问题的代码并解释您的尝试。您的问题有被关闭的危险,因为除了您的目标之外,您没有提供任何相关细节。首先决定如何将猜测次数映射到“奖励”短语,然后编写代码来实现该映射。
-
创建一个函数,它将尝试的次数作为参数,并返回一个包含您想要的消息的字符串。您需要使用某种控制结构来执行此操作,最简单的可能只是一堆 if-else 语句。至于这个问题,这里是题外话,因为实际上很难给你一个简洁的答案,包括一些你试图解决问题的代码会很好。
-
对不起,就像我在这里说的很新,看到一些关于代码的帖子,但它与我的问题无关。我想我需要帮助的是如何将其放入我的代码中,是否应该全部放在一个大的嵌套循环中?很抱歉,我正在尝试找出如何添加我的代码以显示我所拥有的..