summaryrefslogtreecommitdiff
path: root/BlankConsoleLab/Lab3-Ahmed.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'BlankConsoleLab/Lab3-Ahmed.cpp')
-rw-r--r--BlankConsoleLab/Lab3-Ahmed.cpp88
1 files changed, 22 insertions, 66 deletions
diff --git a/BlankConsoleLab/Lab3-Ahmed.cpp b/BlankConsoleLab/Lab3-Ahmed.cpp
index 9f41313..3efa1aa 100644
--- a/BlankConsoleLab/Lab3-Ahmed.cpp
+++ b/BlankConsoleLab/Lab3-Ahmed.cpp
@@ -1,57 +1,4 @@
-/********************************************************************
-* File: Chapter 11 Debug.cpp
-*
-* General Instructions: Complete each step before proceeding to the
-* next.
-*
-* Debugging Exercise 1
-*
-* 1) Make your own data file like Troy 12, with the next person on the
-* next line and save it to a directory you create on your drive.
-* 2) Under the Project menu, select Add Existing Item and
-* add the input file you just placed on your drive to your
-* current project. Make sure your Solution Explorer window
-* is visible. If not, you can display it by selecting Solution
-* Explorer (or Ctrl+Alt+L).
-* 3) Open the input file by simply double clicking the name of the
-* file in your Solution Explorer.
-* 4) Build and execute the program.
-* 5) Update the file paths below to correctly represent the path you
-* created.
-* 6) Rebuild and execute the program.
-* 7) Examine the code and the output and notice the use of
-* parallel arrays.
-* 8) Add the output file created via the execution of
-* your program to your Project. Execute your program again
-* and notice how Visual Studio has rewritten your output file
-* and asks if you would like to reload the file (select Yes).
-* 9) Examine the contents of both the input and the output file.
-* 10) Fix all the problems in your code that exist in relation to
-* the output. Verify that your output is appropriate for your
- input file.
-* 11) Build and execute your code until you have all errors
-* removed and all the output is correct.
-*
-* Debugging Exercise 2
-*
-* 1) Replace the double slashes (\\) in the input file open statement
-* with only a single slash
-* (i.e., inFile.open("C:\TEMP\Chap_11_data.txt").
-* 2) Build your code, noticing the impact of the invalid path you
-* created in the previous step.
-* 3) Replace the backslashes as they were.
-* 4) Change both the input and output filenames so they are
-* invalid.
-* 5) Update the file related error messages within the code
-* to also provide the specific name of the file that is having a
-* problem.
-* 6) Rebuild and execute your program to verify that your messages
-* are correct.
-* 7) Correct the path names.
-* 8) Build and execute your code and carefully check your
-* output on both the console and in the output file.
-*
-********************************************************************/
+
#include <iostream>
#include <fstream> // For the files!!!!
#include <iomanip> // For manipulators & formatting options
@@ -69,7 +16,7 @@ using std::ofstream;
using namespace std;
-const int EMPLOYEES = 50;
+
const int MAX = 50;
int ReadData(ifstream& inFile, ofstream& outFile, int pick[], int drop[], int passCount[], float distance[], float fare[], float toll[], float costPMile[], int counter, int people, int totalRecords, int paid, float totalFare[]);
@@ -78,11 +25,11 @@ void PrintTotalsAndSummary(ofstream& outFile, int totalRecords, int people, int
int main()
{
- int pick[EMPLOYEES];
+ int pick[MAX];
int drop[MAX];
- int passCount[EMPLOYEES];
+ int passCount[MAX];
float distance[MAX];
- float fare[EMPLOYEES];
+ float fare[MAX];
float toll[MAX];
float totalFare[MAX] = { 0 };
float costPMile[MAX] = { 0 };
@@ -107,8 +54,8 @@ int main()
if (outFile.is_open())
{
- PrintTotalsAndSummary(outFile, record_counter, people, pick, drop, passCount, distance, fare, toll, totalFare, costPMile, counter, paid);
WriteOutputFile(outFile, record_counter, people, pick, drop, passCount, distance, fare, toll, totalFare, costPMile, counter, paid);
+ PrintTotalsAndSummary(outFile, record_counter, people, pick, drop, passCount, distance, fare, toll, totalFare, costPMile, counter, paid);
outFile.close();
}
else
@@ -126,26 +73,35 @@ int main()
}
int ReadData(ifstream& inFile, ofstream& outFile, int pick[], int drop[], int passCount[], float distance[], float fare[], float toll[], float costPMile[], int counter, int people, int totalRecords, int paid, float totalFare[])
{
+
-
+ cout << setiosflags(ios::left) << setw(19)
+ << "# ppl"
+ << setw(18) << "Distance" << setw(22)
+ << "Fare"
+ << setw(20) << "Toll"
+ << setw(15) << "Total"
+ << setw(11) << "Cost per Mile" << endl;
inFile >> pick[counter] >> drop[counter] >> passCount[counter] >> distance[counter] >> fare[counter] >> toll[counter]; // Priming Read
while (!inFile.eof())
{
- cout << setiosflags(ios::left) << setw(15)
- << pick[counter]
- << setw(15) << drop[counter] << setw(15)
+ totalFare[counter] = fare[counter] + toll[counter];
+ cout << setiosflags(ios::left) << setw(20)
+ //<< pick[counter]
+ //<< setw(20) << drop[counter] << setw(20)
<< passCount[counter]
- << setw(15) << distance[counter] << setw(15)
+ << setw(20) << distance[counter] << setw(20)
<< fare[counter]
- << setw(15) << toll[counter];
+ << setw(20) << toll[counter] << setw(20)
+ << totalFare[counter] << setw(20);
if (distance[counter] == 0) {
costPMile[counter] = 0;
}
else {
costPMile[counter] = (toll[counter] + fare[counter]) / distance[counter];
}
- cout << setw(15) << costPMile[counter] << endl;
+ cout << setw(20) << setprecision(3) << costPMile[counter] << endl;
counter++;
inFile >> pick[counter] >> drop[counter] >> passCount[counter] >> distance[counter] >> fare[counter] >> toll[counter];