Question
The C++ code I am providing below gives very few of the outputs shown in the picture below. Please I at least 4-5 more outputs,
The C++ code I am providing below gives very few of the outputs shown in the picture below. Please I at least 4-5 more outputs, so I wanted someone to add some lines to my code in order to be able to generate at last 9-10 outputs shown in the picture
#include
#include
#include
using namespace std;
class student
{
int idnum;
char name[50];
int physics, chemistry, mathematics, english, comscience;
double per;
char grade;
void calculate();
public:
void getdata();
void showdata() const;
void show_tabular() const;
int getIDNum() const;
};
void student::calculate()
{
per=(physics+chemistry+mathematics+english+comscience)/5.0;
if(per>=90)
grade='A+';
else if(per>=80)
grade='A';
else if(per>=75)
grade='A-';
else if(per>=70)
grade='B+';
else if(per>=65)
grade='B';
else if(per>=60)
grade='B-';
else if(per>=55)
grade='C+';
else if(per>=50)
grade='C';
else
grade='F';
}
void student::getdata()
{
cout
cin>>idnum;
cout
cin.ignore();
cin.getline(name,50);
cout
cin>>physics;
cout
cin>>chemistry;
cout
cin>>mathematics;
cout
cin>>english;
cout
cin>>comscience;
calculate();
}
void student::showdata() const
{
cout
cout
cout
cout
cout
cout
cout
cout
cout
}
void student::show_tabular() const
{
cout
}
int student::getIDNum() const
{
return idnum;
}
void SaveStudent();
void displayAll();
void Searchdisplay(int);
void modifyStudent(int);
void deleteStudent(int);
void DisplayClassResult();
void DisplayResult();
void write_student()
{
student st;
ofstream outFile;
outFile.open("student.dat",ios::binary|ios::app);
st.getdata();
outFile.write(reinterpret_cast (&st), sizeof(student));
outFile.close();
cout
cin.ignore();
cin.get();
}
void display_all()
{
student st;
ifstream inFile;
inFile.open("student.dat",ios::binary);
if(!inFile)
{
cout
cin.ignore();
cin.get();
return;
}
cout
while(inFile.read(reinterpret_cast (&st), sizeof(student)))
{
st.showdata();
cout
}
inFile.close();
cin.ignore();
cin.get();
}
void display_sp(int n)
{
student st;
ifstream inFile;
inFile.open("student.dat",ios::binary);
if(!inFile)
{
cout
cin.ignore();
cin.get();
return;
}
bool flag=false;
while(inFile.read(reinterpret_cast (&st), sizeof(student)))
{
if(st.getIDNum()==n)
{
st.showdata();
flag=true;
}
}
inFile.close();
if(flag==false)
cout
cin.ignore();
cin.get();
}
void modify_student(int n)
{
bool found=false;
student st;
fstream File;
File.open("student.dat",ios::binary|ios::in|ios::out);
if(!File)
{
cout
cin.ignore();
cin.get();
return;
}
while(!File.eof() && found==false)
{
File.read(reinterpret_cast (&st), sizeof(student));
if(st.getIDNum()==n)
{
st.showdata();
cout
st.getdata();
int pos=(-1)*static_cast(sizeof(st));
File.seekp(pos,ios::cur);
File.write(reinterpret_cast (&st), sizeof(student));
cout
found=true;
}
}
File.close();
if(found==false)
cout
cin.ignore();
cin.get();
}
void delete_student(int n)
{
student st;
ifstream inFile;
inFile.open("student.dat",ios::binary);
if(!inFile)
{
cout
cin.ignore();
cin.get();
return;
}
ofstream outFile;
outFile.open("Temp.dat",ios::out);
inFile.seekg(0,ios::beg);
while(inFile.read(reinterpret_cast (&st), sizeof(student)))
{
if(st.getIDNum()!=n)
{
outFile.write(reinterpret_cast (&st), sizeof(student));
}
}
outFile.close();
inFile.close();
remove("student.dat");
rename("Temp.dat","student.dat");
cout
cin.ignore();
cin.get();
}
void class_result()
{
student st;
ifstream inFile;
inFile.open("student.dat",ios::binary);
if(!inFile)
{
cout
cin.ignore();
cin.get();
return;
}
cout
cout
cout
cout
while(inFile.read(reinterpret_cast (&st), sizeof(student)))
{
st.show_tabular();
}
cin.ignore();
cin.get();
inFile.close();
}
int main()
{
char ch;
int num;
cout.setf(ios::fixed|ios::showpoint);
cout
do
{
system("cls");
cout
cout
cout
cout
cout
cout
cout
cout
cout
cout
cin>>ch;
system("cls");
switch(ch)
{
case '1': write_student(); break;
case '2': display_all(); break;
case '3': cout>num;
display_sp(num); break;
case '4': cout>num;
modify_student(num);break;
case '5': cout>num;
delete_student(num);break;
case '6' : class_result(); break;
case '7': exit(0);;
default: cout
}
}while(ch!='7');
return 0;
}
Menu X 'D:\sdw\cpp2020108.StudentMIS\StudentMIS.exe" =======I LOVE C++======== === ======== ************Students MIS************************ $ $ $ 1. Load Data 2. Show All Students $ $ 5 3. Search Student 4. Add Student 5 $ 5. Modify Student 6. Delete Student $ 5 7. Sort by StuNo 8. Sort by Name 5 $ 9. Sort by Gender 10.Sort by Phone $ 5 11.Sort by WeChat 12.Sort by Dormitory $ $ 13.Sort by Score 14.Statistics Data $ $ 15.Clear Data 16. Save Data To File $ $ 17.Show Selected Data 18.Exit 5 ************CopyRight ESENG DEWENS EX HDU************** Please chooseStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started