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

Design an Essay class that is derived from the GradedActivity class presented in

ID: 3726826 • Letter: D

Question

Design an Essay class that is derived from the GradedActivity class presented in this chapter. The Essay class should determine the grade a student receives for an essay. The student's essay score be up tp 100 and is determined in the following manner: Grammer: 30 points Spelling: 20 points Correct length: 20 points Content: 30 points Demonstrate the class in a simple program.use virtual functions, use seperate headers and class files but zip them.

this is my .cpp file

#include "GradedActivity.h"

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

// 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;

}

this is the .H file

#ifndef GRADEDACTIVITY_H

#define GRADEDACTIVITY_H

// GradedActivity class declaration

class GradedActivity

{

protected:

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

virtual double getScore() const

{ return score; }

virtual char getLetterGrade() const;

};

#endif

Explanation / Answer

import java.util.Scanner;

public class GradedActivity
{
private double score;

public void setScore(double s)
{
score = s;
}

public double getScore()
{
return score;
}
public char getGrade()
{
char letterGrade;

if (score >= 90)
letterGrade = 'A';
else if (score >= 80)
letterGrade = 'B';
else if (score >= 70)
letterGrade = 'C';
else if (score >= 60)
letterGrade = 'D';
else
letterGrade = 'F';

return letterGrade;
}
}
public class Essay extends GradedActivity
{
private double grammar;
private double spelling;
private double correctLength;
private double content;

public void setScore(double gr, double sp, double len, double cnt)
{
setGrammar(gr);
setSpelling(sp);
setCorrectLength(len);
setContent(cnt);
super.setScore(grammar + spelling + correctLength + content);
}

private void setGrammar(double g)
{
if (g <= 30.0)
grammar = g;
else
grammar = 0.0;
}
private void setSpelling(double s)
{
if (s <= 20.0)
spelling = s;
else
spelling = 0.0;
}

private void setCorrectLength(double c)
{
if (c <= 20.0)
correctLength = c;
else
correctLength = 0.0;
}
private void setContent(double c)
{
if (c <= 30)
content = c;
else
content = 0.0;
}
public double getGrammar()
{
return grammar;
}
public double getSpelling()
{
return spelling;
}
public double getCorrectLength()
{
return correctLength;
}

public double getContent()
{
return content;
}
public double getScore()
{
return grammar + spelling + correctLength + content;
}
}

public class FinalExam extends GradedActivity

{
private int numQuestions;
private double pointsEach;
private int numMissed;

public FinalExam(int questions, int missed)
{
double numericScore;

numQuestions = questions;
numMissed = missed;

pointsEach = 100.0 / questions;
numericScore = 100.0 - (missed * pointsEach);

setScore(numericScore);
}

public double getPointsEach()
{
return pointsEach;
}

public int getNumMissed()
{
return numMissed;
}
}

public class PassFailActivity extends GradedActivity
{
private double minPassingScore;

public PassFailActivity(double mps)
{
minPassingScore = mps;
}

public char getGrade()
{
char letterGrade;

if (super.getScore() >= minPassingScore)
letterGrade = 'P';
else
letterGrade = 'F';

return letterGrade;
}
}
public class PassFailExam extends PassFailActivity
{
private int numQuestions;
private double pointsEach;
private int numMissed;


public PassFailExam(int questions, int missed, double minPassing)
{
super(minPassing);
double numericScore;
numQuestions = questions;
numMissed = missed;
pointsEach = 100.0 / questions;
numericScore = 100.0 - (missed * pointsEach);
setScore(numericScore);
}
public double getPointsEach()
{
return pointsEach;
}
public int getNumMissed()
{
return numMissed;
}
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote