#include<iostream>
using namespace std;
/////// employee Class ///////
const int LEN = 80;  
class employee{       
    private:
      char name[LEN];     
      unsigned long number; 
    public:
        void getdata(){
          cout << "\n Enter last name: "; 
          cin >> name;
          cout << " Enter number: "; 
          cin >> number;
        }
        void putdata() const {
          cout << "Name: " << name<<endl;
          cout << "Number: " << number<<endl;
        }
};
class student {
  private:
    char school[LEN];        
    char degree[LEN];       
  public:
    void getedu() {
      cout << " Name of school : ";
      cin >> school;
      cout << "Highest degree  : ";
      cin >> degree;
   }
   void putedu() const {
       cout << "School: " << school;
       cout << "Degree earned: " 
                << degree;
    }
};

/////// manager Class ///////
class manager {
    private:
      employee emp;      
      char title[LEN];  
      double dues;
      student stud;      
    public:
        void getdata()  {
          emp.getdata();
          cout << " Enter title: ";
          cin >> title;
          cout << " Enter golf club dues: "; 
          cin >> dues;
          stud.getedu(); 
        }
        void putdata() const{
          emp.putdata();
          cout << "Title: " << title<<endl;
          cout << "Club dues:" << dues<<endl;
          stud.putedu(); 
        }
};
/////// scientist Class ///////
class scientist{
    private:
      employee emp;      
      int pubs; 
      student stud;
    public:
        void getdata() {
          emp.getdata();
          cout << " Enter number of pubs: "; 
          cin >> pubs;
          stud.getedu();
        }
        void putdata() const  {
          emp.putdata();
          cout << "\n Number of publications: " << pubs<<endl;
          stud.putedu();
        }
};
/////// laberor Class ///////
class laborer {
    employee emp;
    public:
       void getdata(){
          emp.getdata();     
       }     
       void putdata(){
          emp.putdata();     
       }
};

/////// main function ///////
main()
{
    manager m1;
    scientist s1, s2;
    laborer l1;
    cout << "\nEnter data: manager 1";
    m1.getdata();
    cout << "\nEnter data : scientist 1";
    s1.getdata();
    cout << "\nEnter data : laborer 1";
    l1.getdata();
    cout << "\nData on manager 1";
    m1.putdata();
    cout << "\nData on scientist 1";
    s1.putdata();
    cout << "\nData on laborer 1";
    l1.putdata();
    system("pause");
}
