JAVA -Convert number grades to letter grades Welcome to the Letter Grade Convert
ID: 664846 • Letter: J
Question
JAVA -Convert number grades to letter grades
Welcome to the Letter Grade Converter
Enter numerical grade: 90
Letter grade: A
Continue? (y/n): y
Enter numerical grade: 88
Letter grade: A
Continue? (y/n): y
Enter numerical grade: 80
Letter grade: B
Continue? (y/n): y
Enter numerical grade: 67
Letter grade: C
Continue? (y/n): y
Enter numerical grade: 59
Letter grade: F
Continue? (y/n): n
Operation
The user enters a numerical grade from 0 to 100.
The application displays the corresponding letter grade.
The application prompts the user to continue.
Specifications
The grading criteria is as follows:
A 88-100
B 80-87
C 68-79
D 60-67
F <60
Assume that the user will enter valid integers for the grades.
The application should continue only if the user enters “y” or “Y” to continue.
Use a switch for this? Is Scanner class the only thing that needs to be imported?
Explanation / Answer
package Grade;
import java.util.Scanner;
public class grade {
public static void main(String[] args){
System.out.println("Welcome to the Letter Grade Converter");
System.out.println();
Scanner sc = new Scanner(System.in);
String choice = "y";
while (choice.equalsIgnoreCase("y")){
System.out.println("Enter numerical grade: ");
int grade = sc.nextInt();
char letter = 0;
if(grade <= 100 || grade >= 88)
letter = 'A';
System.out.println("Letter grade: " + letter);
if (grade <= 87 || grade >= 80)
letter = 'B';
System.out.println("Letter grade: " + letter);
if (grade <= 79 || grade >= 68)
letter = 'C';
System.out.println("Letter grade: " + letter);
if(grade <= 67 || grade >= 60)
letter = 'D';
System.out.println("Letter grade: " + letter);
if(grade <= 60)
letter = 'F';
System.out.println("Letter grade: " + letter);
System.out.println("Continue? (y/n): ");
choice = sc.next();
System.out.println();
}
}
}
If I use switch for this program if condition will not true it will go directly to default condition.Let take example:
switch(grade)
{
case(grade <= 100 && grade >= 88):System.out.println("Your grade is A"); break;
case(grade <= 87 && grade >= 80):System.out.println("Your grade is B"); break;
case(grade <= 79 && grade >= 68):System.out.println("Your grade is C"); break;
case(grade <= 67 && grade >= 60):System.out.println("Your grade is D"); break;
case(grade < 60):System.out.println("Your grade is F"); break;
default:System.out.println("Failed");
Here you can see a switch statement take a variable as character and compares with number. If a case is met, it will run the code after the : character. In no other cases are met, it will run the default code and that is "FAIL". The break will move to match the grade to the next case, so make sure that is included. So As per my understanding Scanner class is the only choice for import these type of programs.
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.