Assignment Pointers & Classes 1- Define a class student with the following fields: a. First name b. Last name c. ID d. Number of courses enrolled in e. Dynamic array of courses (taken and currently enrolled in): String *courses f. Dynamic array of grades: int* grades g. Address h. Registration fees i. Total number of credits j. Expected Graduation term. 2- Declare an array of four students. Perform the following operations using your declared array: a. Open the provided file input.txt. Fill the array by reading values from the specified input file. Make sure that the array of courses and array of grades are initialized properly and destroyed properly as well. b. Call a function that prints student information in a well-organized table like fashion. c. Call a function that compares average between two students. d. Call a function that prints student names based on their GPA from highest to lowest. (hint you need to sort the array of students). e. Call a function that prints student names from lowest GPA to highest. f. Call a function that gives a flat raise of 10 points to all students in one of the subject matters. g. Call a function that gives a raise based on the highest student grade. This means that the highest student grade should be adjusted to 100 and the rest of the students will get new_student_grade = (100*original_student_grade)/highest_student_grade. h. The below code and table are provided to help you create a similar table of students. void printReport(ofstream& outfile, salesPersonRec list[], int listSize, double saleByQuarter[]) { int index; int quarter; outfile << "––––––––––– Annual Sales Report –––––––––" << "––––" << endl; outfile << endl; outfile << " ID QT1 QT2 QT3 " << "QT4 Total" << endl; outfile << "_____________________________________________" << "_________________" << endl; for (index = 0; index < listSize; index++) { outfile << list[index].ID << " "; for (quarter = 0; quarter < 4; quarter++) outfile << setw(10) << list[index].saleByQuarter[quarter]; outfile << setw(10) << list[index].totalSale << endl; } outfile << "Total "; for (quarter = 0; quarter < 4; quarter++) outfile << setw(10)<< saleByQuarter[quarter]; outfile << endl << endl; } //end printReport

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter8: Arrays And Strings
Section: Chapter Questions
Problem 1TF: Mark the following statements as true or false. A double type is an example of a simple data type....
icon
Related questions
Question

Assignment Pointers & Classes
1- Define a class student with the following fields:
a. First name
b. Last name
c. ID
d. Number of courses enrolled in
e. Dynamic array of courses (taken and currently enrolled in): String *courses
f. Dynamic array of grades: int* grades
g. Address
h. Registration fees
i. Total number of credits
j. Expected Graduation term.
2- Declare an array of four students. Perform the following operations using your declared array:
a. Open the provided file input.txt. Fill the array by reading values from the specified input
file. Make sure that the array of courses and array of grades are initialized properly and
destroyed properly as well.
b. Call a function that prints student information in a well-organized table like fashion.
c. Call a function that compares average between two students.
d. Call a function that prints student names based on their GPA from highest to lowest.
(hint you need to sort the array of students).
e. Call a function that prints student names from lowest GPA to highest.
f. Call a function that gives a flat raise of 10 points to all students in one of the subject
matters.
g. Call a function that gives a raise based on the highest student grade. This means that the
highest student grade should be adjusted to 100 and the rest of the students will get
new_student_grade = (100*original_student_grade)/highest_student_grade.
h. The below code and table are provided to help you create a similar table of students.
void printReport(ofstream& outfile, salesPersonRec list[],
int listSize, double saleByQuarter[])
{
int index;
int quarter;
outfile << "––––––––––– Annual Sales Report –––––––––"
<< "––––" << endl;
outfile << endl;
outfile << " ID QT1 QT2 QT3 "
<< "QT4 Total" << endl;
outfile << "_____________________________________________"
<< "_________________" << endl;
for (index = 0; index < listSize; index++)
{
outfile << list[index].ID << " ";
for (quarter = 0; quarter < 4; quarter++)
outfile << setw(10)
<< list[index].saleByQuarter[quarter];
outfile << setw(10) << list[index].totalSale << endl;
}
outfile << "Total ";
for (quarter = 0; quarter < 4; quarter++)
outfile << setw(10)<< saleByQuarter[quarter];
outfile << endl << endl;
} //end printReport

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Concept of pointer parameter
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
Systems Architecture
Systems Architecture
Computer Science
ISBN:
9781305080195
Author:
Stephen D. Burd
Publisher:
Cengage Learning