View the step-by-step solution to:

"c++ Programming (Stack and Queue) A company has six hiring positions with more people wanting jobs than the number of available positions.

"c++ Programming (Stack and Queue)

A company has six hiring positions with more people wanting jobs than the number of available positions. The company managers decide in order to give more people an opportunity to make money; they will allow people to work in three-month intervals. The first six people on the waiting list will be hired in the order that they are on the waiting list. The first six people will keep these positions for three months. At the end of three months, the manager will roll a dice to determine the number of people who will lose their jobs. The company will use the policy of last-hired-first-fired. For example, if the dice roll is 3, the last 3 people hired will lose their jobs to the first 3 people on the waiting list. People losing their jobs will be placed on the back of the waiting list in the order that they are fired. This process will continue for every three-month interval.

Write a program to simulate this process. Use the following guidelines.
- Use a stack to represent the list of workers.
- Use a queue to represent the list of people waiting to work.
- Simulate a manager rolling a dice by randomly generating a number 1 through 6. Note: Use the C++ function – rand(). (To use this function you may need to include <stdlib.h> or <cstdlib>.)
- At the end of each three-month interval, show the dice value, the worker’s list in the order from last hired to first hired, the waiting list in order of first to last.
- Ask the user if they want the see the workers list and the waiting list at the end of the next three months. Program ends if the user does not want to see any more.

Sample input: Ask the user for the number of people needing jobs. This number must be greater than 6. Using that number, randomly generate the list of ID numbers for the workers. An ID number should be greater than or equal to 100 and less than 1000. Make sure no two workers have the same ID. (Hint: Use the following to generate an ID number: ID = 100 + rand()% 900.)

Sign up to view the entire interaction

Top Answer

Dear Student, ================================================= First of all data structure is not a programming... View the full answer

Sign up to view the full answer

Why Join Course Hero?

Course Hero has all the homework and study help you need to succeed! We’ve got course-specific notes, study guides, and practice tests along with expert tutors.


Educational Resources
  • -

    Study Documents

    Find the best study resources around, tagged to your specific courses. Share your own to gain free Course Hero access.

    Browse Documents
  • -

    Question & Answers

    Get one-on-one homework help from our expert tutors—available online 24/7. Ask your own questions or browse existing Q&A threads. Satisfaction guaranteed!

    Ask a Question
Ask a homework question - tutors are online