Computes student grades for an assignment as a percentage gi
•Computes student grades for an assignment as a percentage given each student’s score and the total points.
•The final scores should be rounded up to the nearest whole value using the ceil function in the <cmath> header file.
•You should also display the floating-point result up to 5 decimal places.
•You should have a function to print the last name of the student and another function to compute and print the percentage as well as “Excellent” if the grade is greater than 90, “Well Done” if the grade is greater than 80, “Good” if the grade is greater than 70, “Need Improvement” if the grade is greater than or equal to 60, and “Fail” if the grade is less than 50.
•The main function is responsible for reading the input file and passing the appropriate arguments to your function.
Solution
// C++ code performance evaluator
#include <iostream>
 #include <iomanip>
 #include <cmath>
 #include <fstream>
using namespace std;
void result(double GradePercent)
 {
 GradePercent = GradePercent*100;
 if (GradePercent > 90)
 {
 cout << \" Excellent\" << endl;
 }
else if (GradePercent > 80)
 {
 cout << \" Well Done\" << endl;
 }
else if (GradePercent > 70)
 {
 cout << \" Good\" << endl;
 }
 else if (GradePercent >= 60)
 {
 cout << \" Need Improvement\" << endl;
 }
 else
 {
 cout << \" Fail\" << endl;
 }
 }
int main ()
 {
 //input variables
 string name;
 double score;
 double totalPoints;
 double GradePercent;
ifstream infile;
// open file
 infile.open (\"grades.txt\");
while(!infile.eof())
 {
 infile >> name;
 infile >> score;
 infile >> totalPoints;
 GradePercent = score/totalPoints;
cout << name << \" \" << ceil(GradePercent*100) << \"% \" << setprecision(5) << GradePercent;
 result(GradePercent);
 }
infile.close();
 return 0;
 }
/*
grades.txt
 Weems 50 60
 Dale 51 60
 Richards 57 60
 Smith 36 60
 Tomlin 44 60
 Bird 45 60
output:
 Weems 84% 0.83333 Well Done
 Dale 85% 0.85000 Well Done
 Richards 95% 0.95000 Excellent
 Smith 60% 0.60000 Need Improvement
 Tomlin 74% 0.73333 Good
 Bird 75% 0.75000 Good
 */


