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

Type in the working code for poly: 1. Run for each grade type 2. And create cons

ID: 669674 • Letter: T

Question

Type in the working code for poly:

1. Run for each grade type

2. And create constructor, Mutator, and Accessor

3. Create “P “ and “ F “grade for Pass/ fail

// This program demonstrates the GradedActivity class.

#include <iostream>

using namespace std;

// GradedActivity class declaration

class GradedActivity

{

private:

double score; // To hold the numeric score

public:

// Default constructor

GradedActivity()

{ score = 0.0; }

// Constructor

GradedActivity(double s)

{ score = s; }

// Mutator function

void setScore(double s)

{ score = s; }

// Accessor functions

double getScore() const

{ return score; }

char getLetterGrade() const;

};

//******************************************************

// Member function GradedActivity::getLetterGrade *

//******************************************************

char GradedActivity::getLetterGrade() const

{

char letterGrade; // To hold the letter grade

if (score > 89)

letterGrade = 'A';

else if (score > 79)

letterGrade = 'B';

else if (score > 69)

letterGrade = 'C';

else if (score > 59)

letterGrade = 'D';

else

letterGrade = 'F';

return letterGrade;

}

class FinalExam : public GradedActivity

{

private:

int numQuestions; // Number of questions

double pointsEach; // Points for each question

int numMissed; // Number of questions missed

public:

// Default constructor

FinalExam()

{ numQuestions = 0;

pointsEach = 0.0;

numMissed = 0; }

// Constructor

FinalExam(int questions, int missed)

{ set(questions, missed); }

// Mutator function

void set(int, int); // Defined in FinalExam.cpp

// Accessor functions

double getNumQuestions() const

{ return numQuestions; }

double getPointsEach() const

{ return pointsEach; }

int getNumMissed() const

{ return numMissed; }

};

//********************************************************

// set function *

// The parameters are the number of questions and the *

// number of questions missed. *

//********************************************************

void FinalExam::set(int questions, int missed)

{

double numericScore; // To hold the numeric score

// Set the number of questions and number missed.

numQuestions = questions;

numMissed = missed;

// Calculate the points for each question.

pointsEach = 100.0 / numQuestions;

// Calculate the numeric score for this exam.

numericScore = 100.0 - (missed * pointsEach);

// Call the inherited setScore function to set

// the numeric score.

setScore(numericScore);

}

int main()

{

double testScore; // To hold a test score

// Create a GradedActivity object for the test.

GradedActivity test;

// Get a numeric test score from the user.

cout << "Enter your numeric test score: ";

cin >> testScore;

// Store the numeric score in the test object.

test.setScore(testScore);

// Display the letter grade for the test.

cout << "The grade for that test is "

<< test.getLetterGrade() << endl;

return 0;

}

Explanation / Answer

#ifndef GRADEDACTIVITY_H #define GRADEDACTIVITY_H class GradedActivity { protected: float score; public: GradedActivity(){score=0;} //default constructor GradedActivity(float s) {score=s;}//constructor void setScore(float s) {score=s;} float getScore() const {return score;} char getLetterGrade() const; }; #endif /* GRADEDACTIVITY_H */ #include "GradedActivity.h" char GradedActivity::getLetterGrade() const { char letter; switch(static_cast(score)/10) { case 10: case 9:letter='A'; break; case 8:letter='B'; break; case 7:letter='C'; break; case 6:letter='D'; break; default: letter='F'; } return letter; }