/* Revise Example 4.3 to use an isValid method * and to input the score in the main method. * It is a design alternative. */ import javax.swing.*; public class Score { int score; public Score(int s) { score = s; } public boolean isValid() { if (score >= 0 && score <= 100) return true; else return false; } public String letterGrade() { String grade = ""; if (score < 50) grade = "F"; else if (score >= 50 && score < 60) grade = "D"; else if (score >= 60 && score < 80) grade = "C"; else if (score >=80 && score < 90) grade = "B"; else if (score >= 90 && score <= 100) grade = "A"; return grade; } public static void main(String [] args) { String input = JOptionPane.showInputDialog ("Enter a score (0-100)"); int temp = Integer.parseInt(input); Score s = new Score(temp); String message = "Score is not valid"; if (s.isValid()) message = "Grade: " + s.letterGrade(); JOptionPane.showMessageDialog(null, message); System.exit(0); } }