# Developing a program that calculates salary

Computation of salaries is a sensitive task that requires the use of complex statistical software. In this article, we elaborate more on how to create a program that calculates salaries. You can always contact us for help if you need support on this topic.

## Calculate Salary

In this project, you will create a program that will calculate a company’s cost of operation. Since you will be dealing with money, you will need to use a double datatype when creating your variables that hold currency amounts. The program will prompt the user for the number of employees that you will be processing. It should then prompt you to enter in, one employee at a time, the employee’s salary and if they have full benefits or partial benefits. Here are some of the main variables you will need to create for the program:
• numEmployees Holds the number of employees to process
• empSalary Holds the salary for a single employee
• fBenefits Indicates if the employee is receiving full benefits
• totalOperatingCost Holds the total cost of operation
The above variables should be declared in the main function. Note: there should be no global variables in this program.

When you loop through each employee you should prompt the user for the employees salary and if they are receiving full benefits or only receiving partial benefits. Once you have these two items, at the bottom of the loop, you will call a function to calculate the cost of operation for that specific employee.

#### The CalcOperating function will have these features:

No return value
You will pass 3 arguments
Salary of the employee
If the employee is receiving full benefits
A reference parameter for the operating cost
Formula for calculating the cost of operation
If the employee receives full benefits
total operating cost += Salary * 1.5
otherwise
total operating cost += Salary * 1.25
You should output the total operating cost to the company of all employees.

Formatting the output: You will need to format the total operating cost with a \$ and 2 decimal points precision.

#### Program Output:

Cost of Operation

Please enter the number of employees to process: 2

Please enter the salary for employee 1: \$1580.00

Is employee 1 receiving (F)ull or (P)artial benefits? Please enter F or P: F

Please enter the salary for employee 2: \$2368.52

Is employee 2 receiving (F)ull or (P)artial benefits? Please enter F or P: P

Your total operating cost is: \$5330.65

Press any key to continue . . .

#### Solution

opcost.cpp

#include

#include

#include

using namespace std;

voidCalcOperating(double empSalary, boolfBenefits, double &totalOperatingCost);

int main() {

intnumEmployees;

doubleempSalary; // salary for a single employee

boolfBenefits; // indicates if the employee is receiving full benefits

doubletotalOperatingCost; // total cost

string choice;

cout<< ” Cost of Operation\n\n”;

cout<< “Please enter the number of employees to process: “;

cin>>numEmployees;

if (numEmployees< 0) { // make sure the input is valid

cout<< “error: the number of employees must be positive.” <

return -1;

}

totalOperatingCost = 0;

for (int i = 0; i

cout<< “\nPlease enter the salary for employee ” << (i + 1) << “: \$”;

cin>>empSalary;

if (empSalary< 0) {

cout<< “error: the salary must be positive.” <

return -1;

}

// ask the user to check if it’s full or partial benefits

cout<< “Is employee ” << (i + 1) << ” receiving (F)ull or (P)artial benefits? “;

cout<< “Please enter F or P: “;

cin>> choice;

fBenefits = (choice == “F”);

// calculate operating cost

CalcOperating(empSalary, fBenefits, totalOperatingCost);

}

cin.ignore(1024, ‘\n’); // consume the new line

// display the result

cout<< “\n\nYour total operating cost is: \$”

<

<

cout<< “Press Enter to continue …\n”;

cin.ignore(1024, ‘\n’); // wait until \n is entered

}

voidCalcOperating(double empSalary, boolfBenefits, double &totalOperatingCost) {

// calculate and accumulate the total operating cost

if (fBenefits) {

totalOperatingCost += empSalary * 1.5;

} else {

totalOperatingCost += empSalary * 1.25;

}

}