Virtual Base Class

Program:


    #include<iostream.h>
    #include<conio.h>
class student { int rollnumber; public: float m1,m2,m3,m4; void getnumber(void) { cout<<"Enter Roll Number: "<<endl; cin>>rollnumber; } void putnumber(void) { cout<<"\nRoll number: "<<rollnumber<<endl; } }; class marks:virtual public student { public: void getmark(void) { cout<<"Enter subject1 mark\n"; cin>>m1; cout<<"Enter subject2 mark\n"; cin>>m2; cout<<"Enter subject3 mark\n"; cin>>m3; cout<<"Enter subject4 mark\n"; cin>>m4; } void putmark(void) { cout<<"\nSubject1 mark: "<<m1<<endl; cout<<"\nSubject2 mark: "<<m2<<endl; cout<<"\nSubject3 mark: "<<m3<<endl; cout<<"\nSubject4 mark: "<<m4<<endl; } }; class result: virtual public student { protected: float tot,avg; public: void gettotal(void) { tot=m1+m2+m3+m4; avg=tot/4; } void puttotal(void) { cout<<"\nTotal: "<<tot<<endl; cout<<"\nAverage: "<<avg<<endl; } }; class studdetail:public marks,public result { char course[10]; int sem; public: void getdetail(void); void putdetail(void); }; void studdetail::getdetail(void) { cout<<"Enter semester:"<<endl; cin>>sem; cout<<"Enter course name:"<<endl; cin>>course; } void studdetail::putdetail(void) { putnumber(); putmark(); cout<<"\nSemester: "<<sem<<endl; cout<<"\nCourse Name: "<<course<<endl; puttotal(); } void main() { clrscr(); studdetail s1; s1.getnumber(); s1.getmark(); s1.gettotal(); s1.getdetail(); cout<<"\n\tStudent Detail"; s1.putdetail(); getch(); }
Powered by nasrullah.in - TechnoNasr 2003-2020.
Designed & Developed by Mohamed Nasrullah.M