C++ for Engineers and Scientists
C++ for Engineers and Scientists
4th Edition
ISBN: 9781133187844
Author: Bronson, Gary J.
Publisher: Course Technology Ptr
Question
Book Icon
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
Level-0 Diagram for this: A customer sends in an order form containing details of their order and their membership number.  A check is made to verify that they are a member.  When their order is verified, a check is made to validate that the items ordered are produced by the company.  Next, the valid order is used to update the daily order file, and then used to create a shipping list and invoice, which are sent on to the Order Fulfilment System.
In this assignment, you will use all of the graphics commands you have learned to create an animated scene. Your program should have a clear theme and tell a story. You may pick any school-appropriate theme that you like. The program must include a minimum of: 5 circles 5 polygons 5 line commands 2 for loops 1 global variable You may wish to use the standard code for simplegui graphics below: import simplegui def draw_handler(canvas): frame = simplegui.create_frame('Testing', 600, 600) frame.set_canvas_background("Black") frame.set_draw_handler(draw_handler) frame.start() Submit Your Code After you write your code here in the programming environment, you will check it and submit it as usual. However, the grader will only perform basic checks against some requirements. If your code passes, you should submit your work, and your teacher will manually grade your submitted work using a rubric.
1. What is the difference between a relative cell reference and an absolute cell reference and give an example of when you would use each.
Knowledge Booster
Background pattern image
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning