Consider the following incomplete C++ program: #include <iostream> int main() {
ID: 3884026 • Letter: C
Question
Consider the following incomplete C++ program: #include <iostream> int main() { ... } A) Write a statement that includes the header files fstream, string, and iomanip in this program. B) Write statements that declare inFile to be an ifstream variable and outFile to be an ofstream variable. C) The program will read data from the file inData.txt and write output to the file outData.txt. Write statements to open both of these files, associate inFile with inData.txt, and associate outFile with outData.txt. D) Suppose that the file inData.txt contains the following data: Giselle Robinson Accounting 5600 5 30 450 9 75 1.5 The first line contains a person's first name, last name, and the department the person works in. In the second line, the first number represents the monthly gross salary, the bonus (as a percent), and the taxes (as a percent). The third line contains the distance traveled and the traveling time. The fourth line contains the number of coffee cups sold and the cost of each coffee cup. Write statements so that after the program executes, the contents of the file outData.txt are shown as below. If necessary, declare additional variables. Your statements should be general enough so that if the contents of the input file changes and the program is run again (without editing and recompilin), it outputs the appropriate results. Name : Giselle Robinson, Department : Accounting Monthly Gross Salary: $5600.00, Monthly Bonus: 5.00%, Taxes: 30.00% Paycheck: $4116.00 Distance Traveled: 450.00 miles, Traveling Time: 9.00 hours Average Speed: 50.00 miles per hour Number of Coffee Cups Sold: 75, Cost: $1.50 per cup Sales Amount = $112.50 E) Write statements that close the input and output files. F) Write C++ program that tests the statements in parts a through e.
Explanation / Answer
#include<iomanip>
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
#include <cstdlib>
using namespace std;
int main(){
ifstream inFile;
ofstream outFile;
string line;
int count1 = 0;
inFile.open("C:\inData.txt");
outFile.open("F:\outData.txt");
if (inFile.is_open())
{
//if file is open then read from file
while ( getline (inFile,line) )
{
string parsed;
stringstream input_stringstream(line);
int counter =0;
if(count1==0){
while(getline(input_stringstream,parsed,' '))
{
if(counter==0){
outFile << "Name : "<<parsed;
}else if(counter == 1){
outFile << " "<<parsed;
}else{
outFile << ", Department : "<<parsed<<" ";
}
counter++;
}
}else if(count1==1){
float gross,tax,bonus,paycheck;
while(getline(input_stringstream,parsed,' '))
{
if(counter==0){
gross=atof( parsed.c_str() );
outFile << setprecision(2) << fixed<<"Monthly Gross Salary: $"<<gross;
}else if(counter == 1){
bonus=atof( parsed.c_str() );
outFile << ", Monthly Bonus: "<<bonus<<"%";
}else{
tax=atof( parsed.c_str() );
outFile << ", Taxes: "<<tax<<"% ";
}
counter++;
}
paycheck=(gross+gross*(bonus/100))-(gross+gross*(bonus/100))*(tax/100);
outFile <<"Paycheck: $"<<paycheck<<" ";
}else if(count1 == 2){
float d,h,as;
while(getline(input_stringstream,parsed,' '))
{
if(counter==0){
d=atof( parsed.c_str() );
outFile << "Distance Traveled: "<<d<<" miles, Traveling Time: ";
}else if(counter == 1){
h=atof( parsed.c_str() );
outFile <<h<<" hours ";
}
counter++;
}
as=d/h;
outFile<<"Average Speed: "<<as<<" miles per hour ";
}else{
float c,t;
int n;
while(getline(input_stringstream,parsed,' '))
{
if(counter==0){
n=atoi( parsed.c_str() );
outFile << "Number of Coffee Cups Sold: "<<n<<", Cost: $";
}else if(counter == 1){
c=atof( parsed.c_str() );
outFile <<c<<" per cup ";
}
counter++;
}
t=n*c;
outFile<<"Sales Amount = $"<<t<<" ";
}
count1++;
}
}
inFile.close();
outFile.close();
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.