Question: this is my current code i cant seem to get it to: Your program should be able to read from a file the above data
this is my current code i cant seem to get it to:
Your program should be able to read from a file the above data into an one-dimensional array and sort it by the students name in an ascending order. And also the record office would like to have a sorted class list for each class, freshman, sophomore, junior, and senior. (use an array of objects of a class). Send the output to a file. Use overload i/o operators. Print out the following: A. The sorted master list with the average GPA of the entire college. B. The freshman list with the average GPA of the freshmen. C. The sophomore list with the average GPA of the sophomores. D. The junior list with the average GPA of the juniors. E. The senior list with the average GPA of the seniors. please answer accordingly to what i have asked
#include
#include
#include
using namespace std;
class Student{
public:
Student(){}
friend ifstream& operator >>(ifstream &input, Student& student);
friend ostream& operator <<(ostream &output, const Student& student);
public:
string name;
string level;
double Gpa;
};
ifstream& operator>>(ifstream &input, Student& student){
input>> student.name>> student.level>> student.Gpa;
return input;
}
ostream& operator <<(ostream &output, const Student& student){
output << student.name<< " ";
output << student.level<< " ";
output<< student.Gpa<< " ";
return output;
}
int main() {
//reading txt file
int i;
Student a;
Student myArray[25];
ifstream myfile("College.txt");
i=0;
string line;
getline(myfile,line);
if (myfile.is_open()) {
while(myfile>>a){
myArray[i]=a;
i++;
}
for (i=0;i<25;i++){
cout< } myfile.close(); } else { cout<<"file is not open"<<' '; } //gpa double sum=0; for (int i=0;i<25;i++){ sum=sum+ myArray[i].Gpa; } double avg=sum/25; cout<< "class avg: " < //sort accending Student temp; int length=25; int j; for(i=0;i<25;i++) { for (j=i+1;j<25;j++){ if (myArray[i].name>myArray[j].name) { temp=myArray[i]; myArray[i]=myArray[j]; myArray[j]=temp; } }} for (i=0;i<25;i++){ cout< } ] (text file ) NAME STANDING GPA Williams,Leonard Freshman 1.85 Smith,Sheila Senior 2.99 Anderson,Andy Sophomore 3.01 Wiser,Bud Freshman 4.00 Robertson,Jully Junior 2.78 Koran,Korn Junior 3.50 Smith,Sam Junior 2.14 Johnson,Jim Junior 3.05 Johnson,Jane Junior 3.75 Potter,Pam Senior 2.98 Brown,Bill Sophomore 2.55 Crooks,Cathy Freshman 1.99 Gregg,Howard Senior 2.44 Nicholas,Judy Senior 3.69 White,Bob Sophomore 1.64 Walsh,Fred Junior 4.00 Dennis,Susan Junior 2.06 Roberts,Rachel Sophomore 4.00 Fredericks,Mary Freshman 2.89 Holmes,Wendy Senior 2.56 Green,Barbara Sophomore 3.67 Brown,David Freshman 2.00 Williamson,Walt Sophomore 2.95 Carson,Jim Sophomore 2.03
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
