Question: Accumulating Totals in Single-Level Control Break Programs Summary In this lab, you will use what you have learned about accumulating totals in a single-level control
Accumulating Totals in Single-Level Control Break Programs
Summary
In this lab, you will use what you have learned about accumulating totals in a single-level control break program to complete a C++ program. The program should produce a report for a supermarket manager to help her keep track of the hours worked by her part-time employees. The report should include the day of the week and the total hours worked by all employees each day.
The student file provided for this lab includes the necessary variable declarations and input and output statements. You need to implement the code that recognizes when a control break should occur. You also need to complete the control break code. Be sure to accumulate the daily totals for all days in the week. Comments in the code tell you where to write your code.
Instructions
Study the prewritten code to understand what has already been done.
Write the control break code, including the code for the dayChange() function, in the main() function.
Execute the program by clicking the Run button at the bottom of the screen. Use the following input values:
Monday6 hours (employee 1)
Tuesday2 hours (employee 1), 3 hours (employee 2)
Wednesday5 hours (employee 1), 3 hours (employee 2)
Thursday6 hours (employee 1)
Friday3 hours (employee 1), 5 hours (employee 2)
Saturday7 hours (employee 1), 7 hours (employee 2), 7 hours (employee 3)
Sunday0 hours
An example program execution is shown below:
WEEKLY HOURS WORKED Enter day of week or done to quit: Monday Enter hours worked: 2 Monday 2 Enter a day of week or done to quit: Monday Enter hours worked: 4 Monday 4 Enter a day of week or done to quit: Tuesday Enter hours worked: 8 Day Total (Monday) 6 Tuesday 8 Enter a day of week or done to quit: done Day Total (Tuesday) 8
// SuperMarket.cpp - This program creates a report that lists weekly hours worked
// by employees of a supermarket. The report lists total hours for
// each day of one week.
// Input: Interactive
// Output: Report.
#include
#include
using namespace std;
int main()
{
// Declare variables.
const string HEAD1 = "WEEKLY HOURS WORKED";
const string DAY_FOOTER = " Day Total ";
// Leading spaces in DAY_FOOTER are intentional.
const string SENTINEL = "done"; // Named constant for sentinel value.
double hoursWorked = 0; // Current record hours.
string dayOfWeek; // Current record day of week.
double hoursTotal = 0; // Hours total for a day.
string prevDay = ""; // Previous day of week.
bool notDone = true; // loop control
// Print two blank lines.
cout << endl << endl;
// Print heading.
cout << "\t\t\t\t\t" << HEAD1 << endl;
// Print two blank lines.
cout << endl << endl;
// Read first record
cout << "Enter day of week or done to quit: ";
cin >> dayOfWeek;
if(dayOfWeek == SENTINEL)
notDone = false;
else
{
cout << "Enter hours worked: ";
cin >> hoursWorked;
prevDay = dayOfWeek;
}
while(notDone == true)
{
// Implement control break logic here
// Include work done in the dayChange() function
}
cout << "\t\t" << DAY_FOOTER << hoursTotal << endl;
return 0;
} // End of main()
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
