SY_BCS_CPP_Slip no :6_1 , 16_2




Slip no : 6_1 , 16_2

Implement the following class hierarchy
Define constructors and appropriate functions tom accept and display details.
Parameterized constructor, accept and display for each class carries-(2+2+2) marks [24]
Write main function to accept details of "n" Teaching-Assistants and display the details.                                                                                                  [6]

#include<iostream>
#include<string.h>

using namespace std;
class person
{
            char fname[20];
            char lname[20];
            public :
            person(){}
            person(char name[],char name1[])
            {
                        strcpy(fname,name);
                        strcpy(lname,name1);
            }

            void accept()
            {           cout<<"\n Enter first name :";
                        cin>>fname;
                        cout<<"\n Enter last name :";
                        cin>>lname;
                         
            }
            void display()
            {
                        cout<<"\n first name is : "<<fname<<"\n last name is :  "<<lname;
            }
};

class student :virtual public  person
{
            char course[20];
            public:
            student(){}
            student(char fname[],char lname[],char c[]):person(fname,lname)
            {
                        strcpy(course,c);
            }
            void accept()
            {           cout<<"\n Enter course name :";
                        cin>>course;
                         
            }
            void display()
            {           cout<<"\n course name is : "<<course;
            }
};
class Teacher:virtual public  person
{
            char dept[20];
            public:
            Teacher(){}
            Teacher(char fname[],char lname[],char d[]):person(fname,lname)
            {
                        strcpy(dept,d);
            }
            void accept()
            {           cout<<"\n Enter departement name :";
                        cin>>dept;
                         
            }
            void display()
            {          
                        cout<<"\n deptartment name is : "<<dept;
            }
};

class Teaching_Assistant:public student,public Teacher
{
            public:
            Teaching_Assistant(){}
            Teaching_Assistant(char fn[],char ln[],char co[],char de[]):student(fn,ln,co),Teacher(fn,ln,de),person(fn,ln)
            {
            }
            void accept()
            {           person::accept();
                        student::accept();
                        Teacher::accept();
             
            }
            void display()
            {
                        person::display();
                        student::display();
                        Teacher::display();
            }
};

main()
{
            Teaching_Assistant ob("Neha","Bhutkar","cpp","Bcs");
            ob.display();
            int n;
            cout<<"\n Enter no of Teaching - Assistant : ";
            cin>>n;
                         
            Teaching_Assistant t2[10];
            for(int i=0;i<n;i++)
            t2[i].accept();
             
            cout<<"\n Information is : \n";
            for(int i=0;i<n;i++)
            {t2[i].display();
            cout<<"\n===================================================================";
            }

}

No comments:

Post a Comment