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; }Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.