C++ for Engineers and Scientists
C++ for Engineers and Scientists
4th Edition
ISBN: 9781133187844
Author: Bronson, Gary J.
Publisher: Course Technology Ptr
Question
Chapter 8, Problem 1PP

(a)

Program Plan Intro

Program Plan:

  • Include library files for various operations.
  • Declare object of ofstream.
  • Create a file named “pay.dat” to write contents.
  • Use if statement with fail() method to check that the entered file name is available or not.
  • Read data from the program and write data to the file.
  • int main() function is used to perform all the task.
  • Display the calculated results to the user.

Program Description: The main purpose of this program is to create the “pay.dat” file and to store the given data in the file.

(a)

Expert Solution
Check Mark

Explanation of Solution

Program:

//including necessary header files
#include<iostream>
#include<fstream>
#include<cstdlib>
#include<string>
#include<iomanip>
usingnamespace std;
int main() { 
string filename = "pay.dat";
// ofstream object
ofstream outFile; 
// open file 
outFile.open(filename.c_str());
// check if file is opened successfully 
if (outFile.fail()) 
{
// display message
    cout <<"The file was not successfully opened"<<endl;
    exit(1);
    } 
// Send data to be written to the file using the 
     outFile <<"Callaway, G."<<"\t"<<16.00<<"  \t"<<40<<endl;
     outFile <<"Hanson, P."<<"  \t"<<15.00<<"  \t"<<48<<endl;
     outFile <<"Lasard, D. "<<"  \t"<<16.50<<"\t"<<35<<endl;
     outFile <<"Stillman, W."<<"\t"<<18.00<<"  \t"<<50<<endl;

// close file 
 outFile.close();
cout<<"File is created successfully!!!!!";

}

Sample output:

C++ for Engineers and Scientists, Chapter 8, Problem 1PP , additional homework tip  1

File- pay.dat

C++ for Engineers and Scientists, Chapter 8, Problem 1PP , additional homework tip  2

(b)

Program Plan Intro

Program Plan:

  • Include library files for various operations.
  • Declare an object of ifstream.
  • Create a statement to open the given file “pay.dat”.
  • Use if statement with fail() method to check that the entered file name is available or not.
  • Use while loop to read the file.
  • Calculate Regular pay, by using the below given formula:

  Regular pay=pay amount*hours

  • Calculate Overtime pay, by using the below given formula:

  overtime pay=(hours-40)*(rates*1.5)

  • int main() function is used to perform all the task.
  • Display the calculated results to the user.

Program Description: The main purpose of this program is to modify the program code given in part (a), so that the program can accept data from the given file “pay.dat” and display the name, rate, hours, regular payment, overtime, gross pay, totals of the regular, overtime, and gross pay on the console.

(b)

Expert Solution
Check Mark

Explanation of Solution

Program:

//including necessary header files
#include<iostream>
#include<fstream>
#include<cstdlib>
#include<string>
#include<iomanip>
usingnamespace std;
//main method
int main() 
{ 
//declaring variables
string filename = "pay.dat";
string first, second; 
int hours;
double rates, regPay, overPay=0, total=0, totalOvertym=0, totalGross=0;
// ifstream object
ifstream in; 
// open file 
in.open(filename.c_str());
// check if file is opened successfully 
if (in.fail()) 
{
// display message
    cout <<"The file was not successfully opened"<<endl;
    exit(1);
    } 
in>>first>>second>>rates>>hours;
    cout<<"Name"<<"\t\tRate"<<"\t Hours"<<"\tRegular"<<"\tOvertime"<<"\t GrossPay"<<endl;
//while loop
while(in.good())
    {
//if working hours are 40 or less
if(hours<=40)
        {
//calculating pay
            regPay=hours*rates;
            overPay=0;
        }
//if pay is greater than 40
if(hours>40)
        {
//calculating pay
            regPay=40* rates;
            overPay=(hours-40)*(rates*1.5);
        }
//displaying message to the user
        cout<<first<<" "<<second<<"\t"<<rates<<"\t"<<hours<<"\t"<<regPay
<<"\t"<<overPay<<"\t\t"<<(regPay+overPay)<<endl;
//calculating total amount
        total=total+regPay;
        totalOvertym=totalOvertym+overPay;
        totalGross=totalGross+regPay+overPay;
//reading data from the file
in>>first>>second>>rates>>hours;

    }
//displaying calculated results to the user
    cout<<"______________________________________________________________"<<endl;
    cout<<"Total \t\t\t\t"<<total<<"\t"<<totalOvertym<<"\t\t"<<totalGross;
// close file 
in.close();
}//end of main method

Sample output:

C++ for Engineers and Scientists, Chapter 8, Problem 1PP , additional homework tip  3

Want to see more full solutions like this?

Subscribe now to access step-by-step solutions to millions of textbook problems written by subject matter experts!
Students have asked these similar questions
C++ program chose the correct result for each of the following programming statements
Using the code and the function above
For each of the following statements, state whether it is True or False.
Knowledge Booster
Similar questions
  • (General math) The volume of oil stored in an underground 200-foot deep cylindrical tank is determined by measuring the distance from the top of the tank to the surface of the oil. Knowing this distance and the radius of the tank, the volume of oil in the tank can be determined by using this formula: volume=radius2(200distance) Using this information, write, compile, and run a C++ program that accepts the radius and distance measurements, calculates the volume of oil in the tank, and displays the two input values and the calculated volume. Verify the results of your program by doing a hand calculation using the following test data: radius=10feetanddistance=12feet.
    (Physics) a. The weight of an object on Earth is a measurement of the downward force onth e object caused by Earth’s gravity. The formula for this force is determined by using Newton’s Second Law: F=MAeFistheobjectsweight.Mistheobjectsmass.AeistheaccelerationcausedbyEarthsgravity( 32.2ft/se c 2 =9.82m/ s 2 ). Given this information, design, write, compile, and run a C++ program to calculate the weight in lbf of a person having a mass of 4 lbm. Verify the result produced by your program with a hand calculation. b. After verifying that your program is working correctly, use it to determine the weight, on Earth, of a person having a mass of 3.2 lbm.
    -Convert SES variable to a factor and assign the value labels “low”, ”middle” and “high” to the 3 levels of thevariable. Then -Define the variables complic, comorb, depressi, diabetes as factors. For all these factors, a zero means “no” and a 1 means “yes”. Assign these value labels through the function factor() and check the change using str()
    Recommended textbooks for you
  • C++ for Engineers and Scientists
    Computer Science
    ISBN:9781133187844
    Author:Bronson, Gary J.
    Publisher:Course Technology Ptr
    C++ Programming: From Problem Analysis to Program...
    Computer Science
    ISBN:9781337102087
    Author:D. S. Malik
    Publisher:Cengage Learning
  • C++ for Engineers and Scientists
    Computer Science
    ISBN:9781133187844
    Author:Bronson, Gary J.
    Publisher:Course Technology Ptr
    C++ Programming: From Problem Analysis to Program...
    Computer Science
    ISBN:9781337102087
    Author:D. S. Malik
    Publisher:Cengage Learning