猜数字的程序

时间:2018-07-27 13:45:01

标签: java while-loop

大家好,我正在编写一个与用户玩猜谜游戏的程序。您需要考虑一个数字,程序就会猜出它。这是我的代码:

]

因此,程序会猜测一个数字,然后根据用户输入(太小或太大)再次猜测。它没有按预期的方式工作,仅再次显示第一个猜测。您知道这里可能有什么问题吗?

2 个答案:

答案 0 :(得分:7)

您使用scan.next();。对于输入too much,将仅返回too

要阅读整行内容,您需要使用scan.nextLine();

答案 1 :(得分:0)

您应该使用NextLine而不是next:

public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("Guess a number between 1 do 100 and i'll guess it");
        int min = 0;
        int max = 100;
        int guess = (max-min)/2 + min;
        boolean end = false;
        while(!end){

            System.out.println("guess is" + guess);
            String userInput = scan.nextLine();
            if(userInput.equalsIgnoreCase("too much")){
                max = guess;
            }
            else if(userInput.equalsIgnoreCase("too small")){
                min=guess;
            }
            else if(userInput.equalsIgnoreCase("correct")){
                end = true;
            }
             guess = (max-min)/2 + min;
        }
    }