Find Jobs
Hire Freelancers

corporate careers

$10-15 USD

Completed
Posted over 20 years ago

$10-15 USD

Paid on delivery
Must be C++ Problem Statement Your assignment is to track the corporate careers of some up-and-coming executives who are busily changing jobs, being promoted and demoted, and, of course, getting paid. In this (admittedly unrealistic) version of the corporate world, people either belong to a company or are unemployed. The list of people the program must deal with is not fixed: initially there are none, and new people may be introduced by the JOIN command (see below). Executives within a company are ordered according to a seniority system and are numbered from 1 to N (the number of people in the company) to indicate their rank: 1 is the lowest rank and N is the highest. A new employee always enters at the bottom of the ladder and hence always starts with a rank of 1. When a new person joins a company, the rank of everyone in the company is increased by one, and when an employee quits, the rank of employees above him or her in that company is decreased by one. Promotions can also occur and affect the ranks in the obvious way. Naturally, salaries are based on rank. An employee's salary is Rank*$1000. Unemployed people draw $50 in unemployment compensation. INPUT 1. From file "company": The company names are listed one per line. There are at most 20 companies. Company names are at most 10 characters and do not contain embedded blanks. 2. From file "commands": commands, as listed below. <Person> and <Company> names are at most 10 characters and do not contain embedded blanks. JOIN <person> <company> <Person> joins the specified <company>. This may be the first reference to this person, or he or she may be unemployed. The person does not currently belong to another company. Remember that when a person joins a company, he or she always starts at the bottom. QUIT <person> <Person> quits his or her job and becomes unemployed. You may assume that the person is currently employed. CHANGE <person> <company> <Person> quits his or her job and joins the specified new <company>. You may assume that the person is currently employed. PROMOTE <person> <Person> is moved up one step in the current company, ahead of his or her immediate superior. ff the person has highest rank within the company, no change occurs. continued in next section..... ## Deliverables DEMOTE <person> <Person> is moved one step down in the current company, below his or her immediate subordinate. If the person has lowest rank within the company, no change occurs. HISTORY <person> Prints out a chronological employment history of <person> from first job to last, including salaries and final rank. PAYDAY Each person is paid his or her salary as specified in the Problem Statement. (You must keep track of the amount each person has earned from the start of the program.) EMPLOYEES <company> The current list of employees should be printed for the specified <company>. The employees must be printed in order of rank; either top to bottom or bottom to top is appropriate. UNEMPLOYED The list of unemployed people should be printed. DUMP Print the employees in each company, as specified under the EMPLOYEES command above, then print the unemployed people. Label the output appropriately END Stop accepting commands. Note that the CHANGE, PROMOTE, and DEMOTE commands do not tell you the person's current employer; you have to search the data structure to find the person. OUTPUT (to screen and file "employee-out") 1. Echo print all commands, and print out a message that indicates what action has been taken. (For the EMPLOYEES and UNEMPLOYED commands, print out the information specified in the Input section.) 2. After all the commands have been processed, print out one list consisting of all the people who have been mentioned in any command and the total amount of money they have accumulated. Your solution should be object-oriented. You should create a Corporate World Class that responds to the action commands. You should make use of one of the two list ADTs (array or pointer based) that you already wrote in your solution. ## Platform windows xp
Project ID: 3011947

About the project

7 proposals
Remote project
Active 20 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
See private message.
$10 USD in 21 days
4.9 (102 reviews)
5.1
5.1
7 freelancers are bidding on average $10 USD for this job
User Avatar
See private message.
$8.50 USD in 21 days
5.0 (52 reviews)
4.9
4.9
User Avatar
See private message.
$8.50 USD in 21 days
4.9 (3 reviews)
1.4
1.4
User Avatar
See private message.
$12.75 USD in 21 days
4.8 (5 reviews)
0.9
0.9
User Avatar
See private message.
$8.50 USD in 21 days
5.0 (5 reviews)
0.6
0.6
User Avatar
See private message.
$11.05 USD in 21 days
0.0 (0 reviews)
0.0
0.0
User Avatar
See private message.
$8.50 USD in 21 days
0.0 (1 review)
0.0
0.0

About the client

Flag of UNITED STATES
United States
0.0
0
Member since Nov 17, 2003

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.