[+] Also calculate max gpa when calculating gpa

This commit is contained in:
Hykilpikonna
2019-09-24 22:22:18 -04:00
parent 1e45b418b8
commit 8e924d8e33
+5 -3
View File
@@ -31,7 +31,7 @@ export class GPAUtils
* *
* @param coursesOriginal List of courses * @param coursesOriginal List of courses
*/ */
public static getGPA(coursesOriginal: Course[]): {gpa: number, accurate: boolean} public static getGPA(coursesOriginal: Course[]): {gpa: number, accurate: boolean, max: number}
{ {
// Clone array // Clone array
let courses: Course[] = []; let courses: Course[] = [];
@@ -55,21 +55,23 @@ export class GPAUtils
// If no course have grade, return -1 // If no course have grade, return -1
if (courses.length == 0) if (courses.length == 0)
{ {
return {gpa: -1, accurate: false}; return {gpa: -1, accurate: false, max: -1};
} }
// Count total GPA // Count total GPA
let totalGPA = 0; let totalGPA = 0;
let maxGPA = 0;
courses.forEach(course => courses.forEach(course =>
{ {
totalGPA += this.getGP(course, course.letterGrade); totalGPA += this.getGP(course, course.letterGrade);
maxGPA += this.getGP(course, "A+");
}); });
// Get average GPA, round to two decimal places // Get average GPA, round to two decimal places
let gpa = Math.round(totalGPA / courses.length * 100) / 100; let gpa = Math.round(totalGPA / courses.length * 100) / 100;
// Return results // Return results
return {gpa: gpa, accurate: accurate}; return {gpa: gpa, accurate: accurate, max: maxGPA};
} }
/** /**