Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 试着解决高尔夫俚语家庭作业关于高尔夫球手使用的俚语_Java_Java.util.scanner - Fatal编程技术网

Java 试着解决高尔夫俚语家庭作业关于高尔夫球手使用的俚语

Java 试着解决高尔夫俚语家庭作业关于高尔夫球手使用的俚语,java,java.util.scanner,Java,Java.util.scanner,所以我很快就要交作业了,我尽了最大的努力,我知道我有几个错误,但我不知道如何解决它 您将编写一个程序,从用户处获取以下三方面的输入: 洞号, 一个洞的票面价值 高尔夫球手完成球洞的击球次数 然后,您将使用下表生成相应的高尔夫球手俚语: 高尔夫球手击球与标准杆的关系: -5, "Ostrich" -4, "Condor" -3, "Albatross" -2, "Eagle" -1, "Birdie" 0, "Even Par" or "Even" or "Par" +1, "Boge

所以我很快就要交作业了,我尽了最大的努力,我知道我有几个错误,但我不知道如何解决它

您将编写一个程序,从用户处获取以下三方面的输入:

洞号, 一个洞的票面价值 高尔夫球手完成球洞的击球次数

然后,您将使用下表生成相应的高尔夫球手俚语:

高尔夫球手击球与标准杆的关系:

-5, "Ostrich"

-4, "Condor"

-3, "Albatross"

-2, "Eagle"

-1, "Birdie"

0, "Even Par" or "Even" or "Par"

+1, "Bogey"

+2, "Double Bogey"

+3, "Triple Bogey"

+4, "4 over par"

+5, "5 over par", etc.
一个射出PAR值两倍的人有:

X2, (double the par), "Beagle"
高尔夫球手实际击球次数:

1, "Hole in One" or "Ace"

4, "Sailboat"

8, "Snowman", "Frosty" or "Dog Balls"

10, "Bo Derek"
那么它应该是这样显示的

> 输入孔编号:1 进入洞的标准杆:4 输入笔划数:4 在第1洞4杆上,你用帆船击球。 >

我的程序是这样的

import java.util.Scanner;

public class GolfSlang {

    public static void main(String[] args) {
    // TODO Auto-generated method stub

    Scanner input = new Scanner(System.in);
    int numbers = 0;
    int parhole = 0;
    int strokes = 0;

    System.out.println("Enter the hole number: ");
    double number = input.nextDouble();

    System.out.print("the par value for a hole: ");
    double par = input.nextDouble();

    System.out.print("The number of strokes the golfer took to complete the hole:");
    double stroke = input.nextDouble();

    if (par == -5) {
        System.out.println(" Ostrich ");
    } else if (par == -4) {
        System.out.println("Condor");
    } else if (par == -3) {
        System.out.println("Albatross");
    } else if (par == -2) {
        System.out.println("Eagle");
    } else if (par == -1) {
        System.out.println("Birdie");
    } else if (par == 0)  {
        System.out.println("Even Par");
    } else if (par == 1) {
        System.out.println("Bogey");
    } else if (par == 2) {
        System.out.println("Double Bogey");
    } else if (par == 3) {
        System.out.println("Triple Bogey");
    } else if (par == 4) {
        System.out.println("4 over par");
    } else if (par == 5) {
        System.out.println("5 over par");
    } else {

    }

    if ((stroke /2)== par) {
        System.out.println("Beagle");
    } else if (stroke == 1) {
        System.out.println("Ace");
    } else if (stroke == 4) {
        System.out.println("Sailboat");
    } else if (stroke == 8) {
        System.out.println("Snowman");
    } else if (stroke == 10) {
        System.out.println("Bo Derek");
    }

    } else {
        System.out.println("On hole # " + numbers + " a par " + par + "you shot" + stroke); {
}
}

首先if(){}else(){}节对于您想要的内容是无用的。保持存储的PAR值和冲程值。你需要检查笔划的差异到PAR {int Val= Stok-Par;}。比较的第一部分应该是用VAR而不是PAR。(建议使用switch case,因为它只是一个很长的基本比较列表)。由于您希望在最后打印所有内容,因此应该保存字符串,而不是使用println(在比较之前初始化)。您可以使用printf(“任意%s”,字符串)更简单地集成打印

您的问题是什么?那么您的问题是什么?对于哪些输入,您的程序不能按预期工作?有错误消息吗?没有显示任何内容,我在线程“main”java.lang中收到异常消息。错误:未解决的编译问题:在GolfSlang.main(GolfSlang.java:5)计算if-else语句(21/20)中的左括号和右括号。我不确定我读的是否正确,但您有语句说if
par
,作为孔的标准杆,对于语句是有一定价值的。它应该是笔划和PAR之间的区别,它给出了一个负值。否则,你总是得到一个“三忌”在一个3洞和“忌”在1个洞,等等应该是代码>如果(笔画PAL==5)…< /代码>编译错误很可能是由于错误的包围。最后一个else语句被声明为else{block{}。这只是关闭else语句,而不是关闭主方法和类