Expand|Select|Wrap|Line Numbers
- #include<iostream>
- #include<String>
- using namespace std;
- class person
- {
- protected :
- char name[40];
- public:
- virtual void getData()
- {
- cout<<"Nhap vao ten:";
- cin>>name;
- }
- virtual void putData()
- {
- cout<<"Ten:"<<name<<"\n";
- }
- virtual void isOutstanding()
- {
- }
- }
- /////////////////
- class student:public person
- {
- private:
- float tbc;
- public:
- virtual void getData()
- {
- person::getData();
- cout<<"Nhap vap diem trung binh cua sinh vien:\n";
- cin>>tbc;
- }
- void putData()
- {
- person::putData();
- cout<<"Diem TBC = "<<tbc<<"\n";
- }
- void isOutstanding()
- {
- if(tbc>=9.0)
- {
- cout<<"Day la hoc sinh xuat sac\n";
- }
- }
- }
- //////////////////////////
- class teacher:public person
- {
- private:
- int NumBook;
- void getData()
- {
- person::getData();
- cout<<"Nhap vao so sach da xuat ban cua giao vien:";
- cin>>NumBook;
- }
- void putData()
- {
- person::putData();
- cout<<"sach xuat ban"<<NumBook<<"\n";
- }
- void isOutstanding()
- {
- if(NumBook>=100)
- {
- cout<<"Giao vien xuat sac\n";
- }
- }
- //////////////////////////
- int main()
- {
- person* persPtr[100];
- int n=0;
- char choise;
- do
- {
- cout<<"Nhap vao ten mot nguoi or sinh vien or giao vien :"<<"p; s; g";
- cin>>choise;
- if(choise=='s')
- {
- persPtr[n] = new student;
- }
- if(choise=='g')
- {
- persPtr[n] = new teacher;
- }
- else
- {
- persPtr[n] = new person;
- }
- persPtr[n++]->getData();
- cout<<"Co nhap nua hay khong(c/k):";
- cin>>choise;
- }
- while(choise=='c');
- for(int j=0;j<n;j++)
- {
- persPtr[j]->putData();
- persPtr[j]->isOutstanding();
- }
- return 0;
- // system("pause");
- }