In Java, please. Complete the Course class by implementing the findStudentHighestGpa() method, which returns the Student object with the highest GPA in the course. Assume that no two students have the same highest GPA. Given classes: Class LabProgram contains the main method for testing the program. Class Course represents a course, which contains an ArrayList of Student objects as a course roster. (Type your code in here.) Class Student represents a classroom student, which has three fields: first name, last name, and GPA. (Hint: getGPA() returns a student's GPA.) Note: For testing purposes, different student values will be used. Ex. For the following students: Henry Nguyen 3.5 Brenda Stern 2.0 Lynda Robison 3.2 Sonya King 3.9 the output is: Top student: Sonya King (GPA: 3.9)
In Java, please.
Complete the Course class by implementing the findStudentHighestGpa() method, which returns the Student object with the highest GPA in the course. Assume that no two students have the same highest GPA.
Given classes:
- Class LabProgram contains the main method for testing the program.
- Class Course represents a course, which contains an ArrayList of Student objects as a course roster. (Type your code in here.)
- Class Student represents a classroom student, which has three fields: first name, last name, and GPA. (Hint: getGPA() returns a student's GPA.)
Note: For testing purposes, different student values will be used.
Ex. For the following students:
Henry Nguyen 3.5 Brenda Stern 2.0 Lynda Robison 3.2 Sonya King 3.9
the output is:
Top student: Sonya King (GPA: 3.9)
LabProgram.java
import java.util.Scanner;
public class LabProgram {
public static void main(String args[]) {
Scanner scnr = new Scanner(System.in);
Course course = new Course();
int beforeCount;
// Example students for testing
course.addStudent(new Student("Henry", "Nguyen", 3.5));
course.addStudent(new Student("Brenda", "Stern", 2.0));
course.addStudent(new Student("Lynda", "Robison", 3.2));
course.addStudent(new Student("Sonya", "King", 3.9));
Student student = course.findStudentHighestGpa();
System.out.println("Top student: " + student);
}
}
Course.java
import java.util.ArrayList;
public class Course {
private ArrayList<Student> roster; //collection of Student objects
public Course() {
roster = new ArrayList<Student>();
}
public Student findStudentHighestGpa() {
/* Type your code here */
}
public void addStudent(Student s) {
roster.add(s);
}
}
Student.java
import java.text.DecimalFormat;
// Class representing a student
public class Student {
private String first; // first name
private String last; // last name
private double gpa; // grade point average
// Student class constructor
public Student(String first, String last, double gpa) {
this.first = first; // first name
this.last = last; // last name
this.gpa = gpa; // grade point average
}
public double getGPA() {
return gpa;
}
public String getLast() {
return last;
}
// Returns a String representation of the Student object, with the GPA formatted to one decimal
public String toString() {
DecimalFormat fmt = new DecimalFormat("#.0");
return first + " " + last + " " + "(GPA: " + fmt.format(gpa) + ")";
}
}
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 2 images