Here is the code:
#include <iostream>
#include <cstdlib>
using namespace std;
class student
{
public:
void inputScores(); // Prompts user to enter 2 quiz, a mid term, and a final score; store
// them in corresponding data members.
void computeGrade(); // Compute average and then convert the average to letter grade
void displayRecord(); // Displays the name; two quiz, midterm, and final scores; letter grade
// of a student in a single row, e.g., John 95 85 90 90 90 A
private:
string name;
int quiz1; // 0 - 10
int quiz2; // 0 - 10
int midterm; // 0 - 100
int final; // 0 – 100
float average;
char grade; // letter grade: A, B, C, D, or F
int num;
int i;
};
int main()
{
int test;
const int SIZE = 10;
student stats;
student s[SIZE];
stats.inputScores();
stats.computeGrade();
stats.displayRecord();
cin >> test;
return 0;
};
void student::displayRecord()
{
cout <<"\n\n\nQuiz1 Quiz2 Midterm Final Average Grade Name" << endl;
cout <<"_____ _____ _______ _____ _______ _____ ____" << endl;
for ( i = 0; i < num; i++)
{
cout << s.quiz1[i] << " " << s.quiz2[i] <<" " << s.midterm[i] <<" ";
cout << s[i].final << " " << s[i].average << " " << s[i].grade << " ";
cout << s[i].name << endl;
}
}
void student::computeGrade()
{
float quizaverage, midtermaverage, finalaverage;
for ( i = 0; i < num; i++)
{
quizaverage = ((s[i].quiz1 + s[i].quiz2) / 2) * .25;
midtermaverage = s[i].midterm * .25;
finalaverage = s[i].final * .5;
s[i].average = quizaverage + midtermaverage + finalaverage;
if (average >= 90 && average <= 100)
grade = 'A';
else if (average >= 80 && average <= 89)
grade = 'B';
else if (average >= 70 && average <= 79)
grade = 'C';
else if (average >= 60 && average <= 69)
grade = 'D';
else
grade = 'F';
}
}
void student::inputScores()
{
cout << "Enter the number of students whose grades you wish to compute: ";
cin >> num;
for (i = 0; i < num; i++)
{
cout <<"\nEnter the students name: ";
cin >> s.name[i];
cout << "\nEnter the first quiz grade: ";
cin >> s.quiz1[i];
cout << "\nEnter the second quiz grade: ";
cin >> s.quiz2[i];
cout << "\nEnter your midterm grade: ";
cin >> s.midterm[i];
cout << "\nEnter your final test grade: ";
cin >> s.final[i];
}
}
Code indented and tags added. -Narue
As you can see, I attempted both ways using s.quiz1 and s[1].quiz1 however both turned up as errors saying I need to declare S in a function first??? I owe you big time to whoever can help me out with this.