C program to maintain database of employees, C/C++ Programming

Assignment Help:

Aim: To implement a program to maintain information of employees in an educational institute using inheritance.

Code:                      

class staff

{

            int code;

            char name[20];

            public:

            void getdata();

            void displaydata();

};

class teacher:staff

{

            char subject[10];

            char publication[20];

            public:

            void getdata();

            void displaydata();

};

 

class typist:staff

{

            int speed;

            public:

            void getdata();

            void displaydata();

};

 

class regular:typist

{

            int salary;

            public:

            void getdata();

            void displaydata();

};

 

class casual:typist

{

            int daily_wages;

            public:

            void getdata();

            void displaydata();

};

 

class officer:staff

{

            int grade;

            public:

            void getdata();

            void displaydata();

};

void staff::getdata()

{

            cout<<"\nEmployee code: ";

            cin>>code;

            cout<<"Name: ";

            cin>>name;

}

void officer::getdata()

{

            staff::getdata();

            cout<<"Enter Officer Grade: ";

            cin>>grade;

}

void teacher::getdata()

{

            staff::getdata();

            cout<<"Enter Subject: ";

            cin>>subject;

            cout<<"Enter Publication: ";

            cin>>publication;

}

void typist::getdata()

{

            staff::getdata();

            cout<<"Enter typing speed: ";

            cin>>speed;

}

void regular::getdata()

{

            typist::getdata();

            cout<<"Enter salary: ";

            cin>>salary;

}

void casual::getdata()

{

            typist::getdata();

            cout<<"Enter daily Wages: ";

            cin>>daily_wages;

}

void staff::displaydata()

{

            cout<<"\nEmployee code: "<

            cout<<"\nName: "<

}

void officer::displaydata()

{

            staff::displaydata();

            cout<<"\nOfficer Grade: "<

}

void teacher::displaydata()

{

            staff::displaydata();

            cout<<"\nSubject: "<

            cout<<"\nPublication: "<

}

void typist::displaydata()

{

            staff::displaydata();

            cout<<"\nTyping speed: "<

}

void regular::displaydata()

{

            typist::displaydata();

            cout<<"\nSalary: Rs."<

}

void casual::displaydata()

{

            typist::displaydata();

            cout<<"Daily Wages: Rs."<

}

void main()

{

            int ch;

            clrscr();

            do

            {

                        cout<<"\n\n1. Teacher\n2. Officer\n3. Typist\n4. Exit\nEnter your choice:";

                        cin>>ch;

                        switch(ch)

                        {

                                    case 1:

                                    teacher t1;

                                    cout<<"\n\tEnter Teacher's Details:";

                                    t1.getdata();

                                    cout<<"\n\t**Details Registered Successfully**\n\n";

                                    t1.displaydata();

                                    break;

 

                                    case 2:

                                    officer o1;

                                    cout<<"\n\tEnter Officer's Details:";

                                    o1.getdata();

                                    cout<<"\n**\tDetails Registered Successfully**\n\n";

                                    o1.displaydata();

                                    break;

 

                                    case 3:

                                    int typ;

                                    cout<<"\n1. Regular Typist\n2. Casual Typist\nEnter choice:";

                                    cin>>typ;

                                    switch (typ)

                                    {

                                                case 1:

                                                regular tr1;

                                                cout<<"\n\tEnter Typist's Details:";

                                                tr1.getdata();

                                                cout<<"\n**\tDetails Registered Successfully**\n\n";

                                                tr1.displaydata();

                                                break;

 

                                                case 2:

                                                casual tc1;

                                                cout<<"\n\tEnter Typist's Details:";

                                                tc1.getdata();

                                                cout<<"\n**\tDetails Registered Successfully**\n\n";

                                                tc1.displaydata();

                                                break;

 

                                                default:

                                                cout<<"Wrong Selection!";

                                    }

                        }

            }while(ch!=4);

getch();

}

Output:

1. Teacher

2. Officer

3. Typist

4. Exit

Enter your choice: 3

 

1. Regular Typist

2. Casual Typist

Enter choice:2

 

        Enter Typist's Details:

Employee code: 555

Name: Anjali

Enter typing speed: 53

Enter daily Wages: 250

 

**      Details Registered Successfully**

Employee code: 555

Name: Anjali

Typing speed: 53 wpm

Daily Wages: Rs.250

 

1. Teacher

2. Officer

3. Typist

4. Exit

Enter your choice:4


Related Discussions:- C program to maintain database of employees

Define name mangling in c++??, A: The procedure of encoding the parameter t...

A: The procedure of encoding the parameter types along with the function/method name into a unique name is called as name mangling. The inverse procedure is called demangling. F

Sparce matrices, Write an algorithm for multiplication of two sparse matric...

Write an algorithm for multiplication of two sparse matrices using Linked Lists.

Area, Write a program to find the area under the curve y = f(x) between x =...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

Program with various inputs-set associative cache , 1.1 A Few Notes: 1....

1.1 A Few Notes: 1. Please test your program with various inputs prior to submission. 2. All group members must understand the entire project for interactive grading. Equal

Code, how to write c++ for function f(x)= 2x^3 -x^2 +10

how to write c++ for function f(x)= 2x^3 -x^2 +10

Explain object conversions, Object Conversions Just like initialization...

Object Conversions Just like initialization, conversions are also done automatically when an object of a derived class is assigned to an object of the base class. Though, the c

Add the two complex no.s given by user - c++ program, THIS PROGRAM IS TO AD...

THIS PROGRAM IS TO ADD THE TWO COMPLEX NO.S GIVEN BY THE USER  */ #include #include #include struct complex     {     int real;     int imag;     }; void main()  {  clrs

Program for stack over flow vulnerability., Imagine that the server program...

Imagine that the server program is a setuid program owned by the root, then after you penetrate the program with a shell running, you become the ROOT and you can remove the whole f

Execution of string length using pointer hopping, A: #include // Test to...

A: #include // Test to see if pointer hopping is worthwhile. // strlen implemented with usual indexing mechanism. int strlen1( const char str[ ] ) { int i; for( i =

Area under the curve, Write a c++ program to find the area under the curve ...

Write a c++ program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points c

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd