FOR C++
Suppose you are working in some organization as an IT developer.
Your task is to design a system that stores the staff data. Staff Details:
• Name
• ID (5-digit numeric ID)
• Role (Assistant Manager, Manager, Managing Director, Guard, Office Boy, etc.)
• Salary (in PKR)
Your system is able to perform the following tasks:
1. Insert the newly hired staff at the correct position (your program should be able to correctly identify the position). The records should be inserted in sorted order with respect to ID.
2. Delete the records of the employees that left the organization.
3. Update the role of the employees (if the employee is promoted from assistant manager to manager, your system should handle it. Take the employee ID and updated post as input and update the role data of a node.)
4. Display the records of all the staff of a specific role. For example, if a manager wants to see the records of all the assistant managers, your program should display them.
5. The designed system should provide the functionality to display the record of all the employees as well.
6. Update the salary of the employees. Your system is able to update the salary of all the employees with a given increment percentage. For example, if the organization has decided to increase the salaries of all the employees by 10%, your system should correctly increase all the employees' salaries. The organization can increment the salary of a particular employee with a given percentage as well.