Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

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.