Question: JAVA ASSIGNMENT: Golf scores record the number of strokes used to get the ball in the hole. The expected number of strokes varies from hole
JAVA ASSIGNMENT: Golf scores record the number of strokes used to get the ball in the hole. The expected number of strokes varies from hole to hole and is called par (i.e. 3, 4, or 5). Each score's name is based on the actual strokes taken compared to par:
"Eagle": number of strokes is two less than par
"Birdie": number of strokes is one less than par
"Par": number of strokes equals par
"Bogey": number of strokes is one more than par
Given main() and two input integers that represent par and the number of strokes used, write a method, golfScore(), that returns the appropriate score name (a String). Return "Error" if par or score is not in the expected range.
MY QUESTION: Why is my code displaying the error that it is missing a return statement even though it very clearly has on???
MY CODE:
import java.util.Scanner;
public class GolfScores { public String golfScore(int par, int strokes) { String name; if (strokes + 2 == par) { name = "Eagle"; } else if (strokes + 1 == par) { name = "Birdie"; } else if (strokes == par) { name = "Par"; } else if (strokes - 1 == par) { name = "Bogey"; } else { name = "Error"; return name; } } public static void main(String[] args) { GolfScores score = new GolfScores(); Scanner scnr = new Scanner(System.in); int par; int strokes; String name; par = scnr.nextInt(); strokes = scnr.nextInt(); name = score.golfScore(par, strokes); System.out.println(name); } }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
