Group Project
25. Travel Expenses
This
• One student should design function main, which will call the other functions in the program. The remainder of the functions will be designed by other members of the team.
• The requirements of the program should be analyzed so each student is given about the same workload.
• The parameters and return types of each function should be decided in advance.
• Stubs and drivers should be used to test and debug the program.
• The program can be implemented as a multi-file program, or all the functions can be cut and pasted into the main file.
Here is the assignment: Write a program that calculates and displays the total travel expenses of a businessperson on a trip. The program should have functions that ask for and return the following:
• The total number of days spent on the trip
• The time of departure on the first day of the trip, and the time of arrival back home on the last day of the trip
• The amount of any round-trip airfare
• The amount of any car rentals
• Miles driven, if a private vehicle was used. Calculate the vehicle expense as $0.27 per mile driven
• Parking fees (The company allows up to $6 per day. Anything in excess of this must be paid by the employee.)
• Taxi fees, if a taxi was used anytime during the trip (The company allows up to $10 per day, for each day a taxi was used. Anything in excess of this must be paid by the employee.)
• Conference or seminar registration fees.
• Hotel expenses (The company allows up to $90 per night for lodging. Anything in excess of this must be paid by the employee.)
• The amount of each meal eaten. On the first day of the trip, breakfast is allowed as an expense if the time of departure is before 7 a.m. Lunch is allowed if the time of departure is before 12 noon. Dinner is allowed on the first day if the time of departure is before 6 p.m. On the last day of the trip, breakfast is allowed if the time of arrival is after 8 a.m. Lunch is allowed if the time of arrival is after 1 p.m. Dinner is allowed on the last day if the time of arrival is after 7 p.m. The program should only ask for the amounts of allowable meals. (The company allows up to $9 for breakfast, $12 for lunch, and $16 for dinner. Anything in excess of this must be paid by the employee.)
The program should calculate and display the total expenses incurred by the businessperson, the total allowable expenses for the trip, the excess that must be reimbursed by the businessperson, if any, and the amount saved by the businessperson it the expenses were under the total allowed.
Input Validation: Do not accept negative numbers for any dollar amount or for miles driven in a private vehicle. Do not accept numbers less than 1 for the number of days. Only accept valid times for the time of departure and the time of arrival.
Want to see the full answer?
Check out a sample textbook solutionChapter 6 Solutions
Starting Out with C++ from Control Structures to Objects (9th Edition)
- Local declarations are those that are stored in the computer's memory, but how are they stored? Using local declarations is unnecessary if the same goal can be accomplished without them. When reference parameters may be used in any function, why bother with value parameters? When it comes to processing programme data, how important are value parameters?arrow_forwardTracking laps Learning Objectives In this lab, you will practice writing functions, passing arguments and returning results from the function printing the result of a function call writing your code as a module Instructions Main Idea An Olympic-size swimming pool is used in the Olympic Games, where the racecourse is 50 meters (164.0 ft) in length. "In swimming, a lap is the same as a length. By definition, a lap means a complete trip around a race track, in swimming, the pool is the race track. Therefore if you swim from one end to the other, you’ve completed the track and thus you’ve completed one lap or one length." (Source: What Is A Lap In Swimming? Lap Vs Length) Write the function meters_to_laps() that takes a number of meters as an argument and returns the real number of laps. Complete the program to output the number of laps with two digits after the period. Examples Input: 150 Output : 3.00 Input: 80 Output: 1.60 Your program must define and call the following…arrow_forwardWhen invoking a function that takes a significant number of arguments, the order in which those parameters are sent in is quite important.arrow_forward
- When executing a function that accepts multiple arguments, the order in which parameters are supplied is crucial.arrow_forwardThe functions that are defined according to our requirements are called ____ (A) Good functions (B) Modules (C) User defined functions (D) Library functionsarrow_forwardLocal declarations are those that are kept in the memory of the computer; but, how exactly are they kept in memory? If reaching one's objective can be done without making use of local declarations, then doing so is a waste of time. Why bother using value parameters when you can just use references as your arguments in any function? How crucial are value parameters when it comes to the processing of programmed data?arrow_forward
- Why is it vital to define functions while developing code?arrow_forwardContext You work with the team in charge of the automatic driving program at Tesla. You are in charge of programming the necessary braking to be applied in the event that the car's on-board computer detects a stationary obstacle that appears directly in front of the car. Constraints In order not to rush the passengers of the car too much, the program would like to brake as gently as possible. To keep a certain safety margin, the program must stop 1 meter before reaching the obstacle. Modelization Start by modeling the acceleration required to bring the car to a complete stop (while respecting the constraints) as a function of the speed at which the car was initially traveling and the distance at which the obstacle appeared. Then test your model by calculating the modulus of the acceleration needed for the following values The car was traveling at 45 km/h; The obstacle appeared 23 meters in front of the car;arrow_forwardWhen should we utilize a class component rather than a function component?arrow_forward
- In this assignment compile and run example2(debug_FunctionSwap.cpp) and complete the steps from Debugging in C++ Programming presentation. See how the program works step by step See the value of the variable during the program execution Criteria File format requirements Screen shot of Program Running Screen shot of each step completed as shown in presentation Quality of detailed steps and screenshots as per requirements listed above This is the program #include <iostream> using namespace std; // function prototypes void swap(int& x, int& y); int main() { // local variable declaration: int a = 100, b = 200; cout << "Before swap, value of a :" << a << endl; cout << "Before swap, value of b :" << b << endl << endl; // call function swap to swap the values using variable reference. swap(a, b); cout << "After swap, value of a :" << a << endl; cout << "After swap, value of b :" << b…arrow_forwardWhat is the purpose of conditions in programming? Conditions are used to perform the same steps over again. Conditions are a step-by-step plan to solve a problem. Used to explain how the program works or functions. These lines are ignored by the compiler during runtime. Conditions are used to affect the flow of the steps.arrow_forwardIf you have the time, could you provide a more detailed description of the function metrics play in the software development process? Everything must be described in great depth.arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education