In a course, a teacher gives the following tests and assignments:
A lab activity that is observed by the teacher and assigned a numeric score.
A pass/fail exam that has 10 questions. The minimum passing score is 70.
An essay that is assigned a numeric score.
A final exam that has 50 questions.
Write a class named CourseGrades. The class should have a member named grades that is an array of GradedActivity pointers. The grades array should have four elements, one for each of the assignments previously described. The class should have the following member functions:
setLab: This functions should accept the address of a GradedActivity object its argument. This object should already hold the student's score for the lab activity. Element 0 of the grades array should reference this object.
setPassFailExam: This function should accept the address of a passFailExam object as its argument. This object should already hold the student's score for the pass/fail exam. Element 1 of the grades array should reference this object.
setEssay: This function should accept the address of an Essay object as its argument. (Use a GradedActivity object.) This object should already hold the student;s score for the essay. Element 2 of the grades array should reference this object.
setPassFailExam: This function should accept the address of a FinalExam object as its argument. This object should already hold the student's score for the final exam. Element 3 of the grades array should reference this object.
print: This function should display the numeric scores and grades for each element in the grades array.
Demonstrate the class in a program. C++