From fc2fd00bf8bf02bd99f1f0ab246e677e4f1da7b3 Mon Sep 17 00:00:00 2001 From: jacobdw22 Date: Mon, 28 Nov 2022 13:00:29 -0800 Subject: Added Lab 3 Assist Code --- BlankConsoleLab/BlankConsoleLab.cpp | 123 ++++++++++++++++++++++-- BlankConsoleLab/BlankConsoleLab.vcxproj | 11 ++- BlankConsoleLab/BlankConsoleLab.vcxproj.filters | 3 + BlankConsoleLab/lab3_Report.txt | 0 4 files changed, 123 insertions(+), 14 deletions(-) create mode 100644 BlankConsoleLab/lab3_Report.txt diff --git a/BlankConsoleLab/BlankConsoleLab.cpp b/BlankConsoleLab/BlankConsoleLab.cpp index ed5f807..113ca96 100644 --- a/BlankConsoleLab/BlankConsoleLab.cpp +++ b/BlankConsoleLab/BlankConsoleLab.cpp @@ -1,16 +1,119 @@ -// BlankConsoleLab.cpp : This file contains the 'main' function. Program execution begins and ends there. -// - +/*This is Lab 3 assist program. It does not do Lab 3 specs BUT it will +help ALOT!!! +Not many comments shown in order to require students to think +Use an input file with 6 columns of numbers as required in Lab 3 Write up. +Place file in correct path. +Name it lab3_data.txt +*/ #include - -using namespace std; - -using std::cout; +#include // For the files!!!! +#include // For manipulators & formatting options using std::cin; +using std::cout; using std::endl; - +using std::setw; +using std::ios; +using std::ifstream; +using std::ofstream; +const int MAX = 100; +int ReadData(ifstream& inFile, int pick[], int drop[], int psgr[], float + dist[], float fare[], float toll[]); +void WriteOutputFile(ofstream& outFile, int pick[], int drop[], int + psgr[], float dist[], float fare[], float toll[], + int counter); +void PrintTotalsAndSummary(ofstream& out, int totalRecords); int main() { - cout << "Hello World!\n"; + int pick[MAX]; + int drop[MAX]; + int psgr[MAX]; + float dist[MAX]; + float fare[MAX]; + float toll[MAX]; + int record_counter(0); + ifstream inFile; + // Notice how this automatically opens the file + ofstream outFile("lab3_Report.txt"); + inFile.open("large.txt"); + if (inFile.is_open()) + { + record_counter = ReadData(inFile, pick, drop, psgr, dist, + fare, toll); + inFile.close(); + if (outFile.is_open()) + { + WriteOutputFile(outFile, pick, drop, psgr, + dist, fare, toll, record_counter); + PrintTotalsAndSummary(outFile, + record_counter); + outFile.close(); + } + else + { + cout << "Trouble Opening Input File"; + cout << "\n\n\t\t ** About to EXIT NOW! ** "; + } + } + else + { + cout << "Trouble Opening Output File"; + cout << "\n\n\t\t ** About to EXIT NOW! ** "; + } + return 0; +} +int ReadData(ifstream& inFile, int pick[], int drop[], int psgr[], float + dist[], float fare[], float toll[]) +{ + int counter = 0; + inFile >> pick[counter] >> drop[counter] >> psgr[counter] >> + dist[counter] >> fare[counter] >> toll[counter]; // Priming Read + while (!inFile.eof()) + { + cout << setiosflags(ios::left) << setw(5) + << pick[counter] << resetiosflags(ios::left) + << setw(10) << drop[counter] << + resetiosflags(ios::left) + << setw(12) << psgr[counter] << + resetiosflags(ios::left) + << setw(14) << + dist[counter] << resetiosflags(ios::left) + << setw(14) << fare[counter] << + resetiosflags(ios::left) + << setw(14) << toll[counter] + << endl; + counter++; + inFile >> pick[counter] >> drop[counter] >> psgr[counter] + >> dist[counter] >> fare[counter] >> toll[counter]; + } + return counter; } - +void WriteOutputFile(ofstream& outFile, int pick[], int drop[], int + psgr[], float dist[], float fare[], float toll[], + int counter) +{ + outFile << " Here is the Output File" << endl; + for (int r = 0; r <= counter - 1; r++) + { + outFile << setiosflags(ios::left) << setw(5) + << pick[r] << resetiosflags(ios::left) + << setw(10) << drop[r] << + resetiosflags(ios::left) + << setw(12) << psgr[r] << + resetiosflags(ios::left) + << setw(14) << + dist[r] << resetiosflags(ios::left) + << setw(14) << fare[r] << + resetiosflags(ios::left) + << setw(14) << toll[r] + << endl; + } +} +void PrintTotalsAndSummary(ofstream& outFile, int totalRecords) +{ + // To screen + cout << "\n\n\t** Total Records: " << totalRecords << " **\n" + << "\t\t The End \n"; + // To file + outFile << "\n\n\t** Total Records: " << totalRecords << " **\n" + << "\t\t The End \n"; +} \ No newline at end of file diff --git a/BlankConsoleLab/BlankConsoleLab.vcxproj b/BlankConsoleLab/BlankConsoleLab.vcxproj index db2e734..43afad4 100644 --- a/BlankConsoleLab/BlankConsoleLab.vcxproj +++ b/BlankConsoleLab/BlankConsoleLab.vcxproj @@ -29,26 +29,26 @@ Application true - v142 + v143 Unicode Application false - v142 + v143 true Unicode Application true - v142 + v143 Unicode Application false - v142 + v143 true Unicode @@ -141,6 +141,9 @@ + + + diff --git a/BlankConsoleLab/BlankConsoleLab.vcxproj.filters b/BlankConsoleLab/BlankConsoleLab.vcxproj.filters index aca1dd9..b6c0205 100644 --- a/BlankConsoleLab/BlankConsoleLab.vcxproj.filters +++ b/BlankConsoleLab/BlankConsoleLab.vcxproj.filters @@ -19,4 +19,7 @@ Source Files + + + \ No newline at end of file diff --git a/BlankConsoleLab/lab3_Report.txt b/BlankConsoleLab/lab3_Report.txt new file mode 100644 index 0000000..e69de29 -- cgit v1.2.3