CPP - Inheritance

 

CPP

Inheritance



Fill in the blanks

1.What is Inheritance in C++? Deriving new classes from parent classes

2.One Object acquires properties and behavior of parent object is called Inheritance

3.Types of Inheritance  5 

4.How many access specifier used for derived class 3 

5. When the inheritance is private, the private methods in base class are  Not Accessible in the derived class (in C++).

6.Inheritance use Code Reusability

7.Single inheritance is one base class one derived class

8. Multilevel inheritance is one base class two derived class

9. Multiple inheritance is More base class one derived class

10. Hierarchical  inheritance is one base class More derived class

 

Answer the following Question

                                                                              (4 marks)

1.Write a Program for Single Inheritance

#include <iostream.h> 

#include <conio.h> 

 class father

{

   public:

    void house()

    {

        cout<<"Have own House."<<endl;

    }

};

class son:public father

{

    public:

    void car()

    {

        cout<<"Have own Car."<<endl;

    }

};

void main()

{

    son o;

    clrscr();

    o.house();

    o.car();

   getch();

}

 

Answer the following Question

                                                                              (10 marks)

1.Write a Program for Multilevel Inheritance

#include<iostream.h>

#include<conio.h>

class train{

private:

char train_no[10];

char train_name[15];

float train_fare;

public:

void getTrainDetails()

{

cout<<"Type Train Number";

cin>>train_no;

cout<<"type train name";

cin>>train_name;

cout<<"type fare";

cin>>train_fare;

}

void printTrainDetails()

{

cout<<"Train number:"<<train_no<<endl;

cout<<"Train Name:"<<train_name<<"\n";

cout<<"Train fare:"<<train_fare<<endl;

}

};

class ElectricTrain:public train

{

private:

int coaches;

int seatspercoach;

public:

void getCoachDetails()

{

cout<<"get number of coaches";

cin>>coaches;

cout<<"get number of seat per coach";

cin>>seatspercoach;

}

void printCoachDetails()

{

cout<<"number of coaches="<<coaches<<"\n";

cout<<"number of seat per coach="<<seatspercoach<<"\n";

}

};

class Passenger:public ElectricTrain

{

private:

char pname[40];

int age;

public:

void getPassengerDetails()

{

cout<<"get name and age";

cin>>pname>>age;

}

void printPassengerDetails()

{

cout<<"Passenger Name"<<pname<<"\n";

cout<<"Age"<<age<<"\n";

}

};

void main()

{

clrscr();

Passenger P;

P.getTrainDetails();

P.getCoachDetails();

P.getPassengerDetails();

P.printTrainDetails();

P.printCoachDetails();

P.printPassengerDetails();

getch();

}

2. Write a Program for Hybrid Inheritance

#include<iostream.h>

#include<conio.h>

class stu{ //First base Class//

    int id;

    char name[20];

    public:

    void getstu(){

         cout << "Enter stuid, name";

         cin >> id >> name;

    }

};

 

class marks: public stu{//derived class//

    protected:

    int m, p, c;

    public:

    void getmarks(){

         cout << "Enter 3 subject marks:";

         cin >> m >> p >> c;

    }

};

 

class sports{//Second base class//

    protected:

    int spmarks;

    public:

    void getsports(){

         cout << "Enter sports marks:";

         cin >> spmarks;

    }

};

 

class result : public marks, public sports{//Derived class by hybrid inheritance//

    int tot;

    float avg;

    public :

    void show(){

         tot=m+p+c;

         avg=tot/3.0;

         cout << "Total=" << tot << endl;

         cout << "Average=" << avg << endl;

         cout << "Average + Sports marks =" << avg+spmarks;

    }

};

 

void main(){

    result r;//object//

    r.getstu();

    r.getmarks();

    r.getsports();

    r.show();

    getch();

}

3. Write a Program for below diagram(Multiple Inheritance)


 

#include<iostream.h>

#include<conio.h>

class Item{

int Itemno;

int rate;

public:

void getItem()

{

cout<<"get Itemno and rate";

cin>>Itemno>>rate;

}

void putItem()

{

cout<<"Itemno="<<Itemno<<endl;

cout<<"Rate="<<rate<<endl;

}

};

class ItemDetail

{

char desc[40];

int qty;

public:

void getItemDetail()

{

cout<<"Description and qty";

cin>>desc>>qty;

}

void putItemDetail()

{

cout<<"Desc="<<desc<<endl;

cout<<"Qty="<<qty<<endl;

}

};

class customer:public Item,public ItemDetail

{

char custname[40];

public:

void get()

{

cout<<"enter customer name";

cin>>custname;

}

void put()

{

cout<<custname<<endl;

}

};

void main()

{

clrscr();

customer K;

K.getItem();

K.getItemDetail();

K.get();

K.putItem();

K.putItemDetail();

K.put();

getch();

}

4.Write a Program for below diagram(Hierarchical Inheritance)


#include<iostream.h>

#include<conio.h>

class company

{

private:

char name[40];

public:

void get()

{

cout<<"Get Company Nmae";

cin>>name;

}

void put()

{

cout<<"Company Name="<<name;

}

};

class RegularEmployee:public company

{

int empno;

char ename[50];

float sal;

public:

void getemp()

{

cout<<"get employee details one by one";

cin>>empno>>ename>>sal;

}

void putemp()

{

cout<<empno<<ename<<sal;

}

};

class labour:public company

{

int code;

char name[40];

float wage;

public:

void getdetail()

{

cout<<"Get Code,Name,wage";

cin>>code>>name>>wage;

}

void putdetail()

{

cout<<"Code="<<code<<"\n";

cout<<"Name="<<name<<"\n";

cout<<"Wages="<<wage<<"\n";

}

};

void main()

{

clrscr();

labour L;

L.get();

L.getdetail();

L.put();

L.putdetail();

RegularEmployee R;

R.getemp();

R.putemp();

getch();

}

 

No comments:

Post a Comment