我的游戏在Eclipse中完美运行,但在texteditor(使用终端时的ubuntu)中不起作用。为什么?

时间:2015-09-01 17:36:42

标签: java eclipse ubuntu

我是第一年的CS学生,我不得不用java做猜谜游戏。它在Eclipse中运行良好,但在ubuntu终端中,该程序几乎无法运行。它只询问我一次猜测一个数字,那就是它。

在我给出答案之后,它并没有像在Eclipse中那样再次问我。

有谁知道如何解决?对不起它在荷兰语。

public class Opgave0 {

public static void main(String[] args) {
    int x;
    Random random = new Random();
    int getal = 0;
    System.out.println("Geef een getal tussen 1 en 10, je mag drie keer raden.");
    System.out.println("Eerste keer:");
    Scanner Scanner = new Scanner(System.in);
    getal = Scanner.nextInt();
    x = random.nextInt(9) + 1;
    if (getal > 10) {
        System.out.println("Het getal is te hoog, kies een getal van 1 tot 10 en probeer het opnieuw.");
    }
    else if (getal < 1) {
        System.out.println("Het getal is te laag, kies een getal van 1 tot 10 en probeer het opnieuw.");
    }
    else {
        if (getal > 0 && getal < 10) {
            if (getal == x) {
                System.out.println(x + " klopt, goed geraden!");
            } 
            else if (getal > x) { 
                System.out.println("te hoog");
                System.out.println("Tweede keer:");
                getal = Scanner.nextInt();
                if (getal == x) {
                    System.out.println(x + " klopt, goed geraden!");
                }
                else if (getal > x) {
                    System.out.println("te hoog");
                    System.out.println("Derde keer:");
                    getal = Scanner.nextInt();
                    if (getal == x) {
                        System.out.println(x + " klopt, goed geraden!");
                        }
                    else if (getal > x) {
                        System.out.println("te hoog");
                        }
                    else if (getal < x) {
                        System.out.println("te laag");
                        }
                }
                else if (getal < x) {
                    System.out.println("te laag");
                    System.out.println("Derde keer:");
                    getal = Scanner.nextInt();
                    if (getal == x) {
                        System.out.println(x + " klopt, goed geraden!");
                        }
                    else if (getal > x) {
                        System.out.println("te hoog");
                        }
                    else if (getal < x) {
                        System.out.println("te laag");
                        }
                }

            }
            else if (getal < x) {
                System.out.println("te laag");
                System.out.println("Tweede keer:");
                getal = Scanner.nextInt();
                if (getal == x) {
                    System.out.println(x + " klopt, goed geraden!");
                }
                else if (getal > x) {
                    System.out.println("te hoog");
                    System.out.println("Derde keer:");
                    getal = Scanner.nextInt();
                    if (getal == x) {
                        System.out.println(x + " klopt, goed geraden!");
                        }
                    else if (getal > x) {
                        System.out.println("te hoog");
                        }
                    else if (getal < x) {
                        System.out.println("te laag");
                        }
                }
                else if (getal < x) {
                    System.out.println("te laag");
                    System.out.println("Derde keer:");
                    getal = Scanner.nextInt();
                    if (getal == x) {
                        System.out.println(x + " klopt, goed geraden!");
                        }
                    else if (getal > x) {
                        System.out.println("te hoog");
                        }
                    else if (getal < x) {
                        System.out.println("te laag");
                        }
                }
            }
            else {
                System.out.println("Kies een getal tussen 1 en 10, jouw getal is te hoog/laag");

            }

            }
        }
    }
}

3 个答案:

答案 0 :(得分:0)

你没有使用循环,所以你发布的代码只会执行一次(正如你在命令行中看到的那样)它在eclipse中多次询问的唯一方法就是你实际上正在执行好几次。

答案 1 :(得分:0)

您的代码中没有循环。因此,请保持您的程序将包含在main方法中的所有实现置于无限循环中。

while(true){
   //Your implementation for the game
}

答案 2 :(得分:-1)

您的终端控制台似乎没有返回正确的&#39;行返回字符&#39;。尝试使用console-preferences设置正确的字符编码(UTF-8?试试)