summaryrefslogtreecommitdiff
path: root/BlankConsoleLab
diff options
context:
space:
mode:
authorprestonderek <[email protected]>2022-11-18 21:07:03 -0800
committerprestonderek <[email protected]>2022-11-18 21:07:03 -0800
commit6d6e2d3be8470a402f4012371c9031458939e35f (patch)
tree19b5fcc6a1fcf98a1d772b4186922a47146e95b3 /BlankConsoleLab
parentSetting up GitHub Classroom Feedback (diff)
downloadcst116-lab3-prestonderek-6d6e2d3be8470a402f4012371c9031458939e35f.tar.xz
cst116-lab3-prestonderek-6d6e2d3be8470a402f4012371c9031458939e35f.zip
Commit for majority finished
Diffstat (limited to 'BlankConsoleLab')
-rw-r--r--BlankConsoleLab/BlankConsoleLab.cpp141
-rw-r--r--BlankConsoleLab/BlankConsoleLab.vcxproj8
2 files changed, 140 insertions, 9 deletions
diff --git a/BlankConsoleLab/BlankConsoleLab.cpp b/BlankConsoleLab/BlankConsoleLab.cpp
index ed5f807..3145455 100644
--- a/BlankConsoleLab/BlankConsoleLab.cpp
+++ b/BlankConsoleLab/BlankConsoleLab.cpp
@@ -2,15 +2,146 @@
//
#include <iostream>
-
-using namespace std;
-
-using std::cout;
+#include <fstream>
+#include <iomanip>
using std::cin;
+using std::cout;
using std::endl;
+using std::setw;
+using std::ios;
+using std::left;
+using std::right;
+
+
+using std::ifstream;
+using std::ofstream;
+
+const int EMPLOYEES = 20;
+const int MAX = 100;
+
+int ReadData(ifstream& inFile, int pickup[], int dropoff[], int psgrs[], float dist[], float fare[], float toll[]);
+void WriteOutputFile(ofstream& outFile, int pickup[], int dropoff[], int psgrs[], float dist[], float fare[], float toll[], int record_counter);
+void PrintTotalsAndSummary(ofstream& out, int totalRecords);
int main()
{
- cout << "Hello World!\n";
+ int pickup[MAX];
+ int dropoff[MAX];
+ int psgrs[MAX];
+ float dist[MAX];
+ float fare[MAX];
+ float toll[MAX];
+ int record_counter(0);
+
+ ifstream inFile;
+
+ ofstream outFile("C:\\Users\\prest\\source\\repos\\cst116-lab3-prestonderek\\LabResults.txt");
+ inFile.open("C:\\Users\\prest\\source\\repos\\cst116-lab3-prestonderek\\small.txt");
+
+ if (inFile.is_open())
+ {
+ record_counter = ReadData(inFile, pickup, dropoff, psgrs, dist, fare, toll);
+ inFile.close();
+
+ if (outFile.is_open())
+ {
+ WriteOutputFile(outFile, pickup, dropoff, psgrs, dist, fare, toll, record_counter);
+ PrintTotalsAndSummary(outFile, record_counter);
+ outFile.close();
+ }
+ else //Only outputs this else if the input file path is good. Otherwise it just jumps to the other else.
+ {
+ cout << "Trouble Opening Output File";
+ cout << "\n\n\t\t ** About to EXIT NOW! ** ";
+ }
+ }
+ else
+ {
+ cout << "Trouble Opening Input File";
+ cout << "\n\n\t\t ** About to EXIT NOW! ** ";
+ }
+ return 0;
+}
+int ReadData(ifstream& inFile, int pickup[], int dropoff[], int psgrs[], float dist[], float fare[], float toll[])
+{
+ int counter = 0;
+ inFile >> pickup[counter] >> dropoff[counter] >> psgrs[counter] >>
+ dist[counter] >> fare[counter] >> toll[counter]; // Priming Read
+
+ cout << setw(5) << "Pickup: ";
+ cout << setw(10) << " Dropoff:";
+ cout << setw(12) << "Psgrs:";
+ cout << setw(12) << "Distance:";
+ cout << setw(12) << "Fare:";
+ cout << setw(12) << "Tolls:";
+ cout << endl;
+
+ while (!inFile.eof())
+ {
+ if (toll[counter] == 0)
+ {
+ cout << setiosflags(ios::left) << setw(5)
+ << pickup[counter] << resetiosflags(ios::left)
+ << setw(10) << dropoff[counter] <<
+ resetiosflags(ios::left)
+ << setw(12) << psgrs[counter] <<
+ resetiosflags(ios::left)
+ << setw(14) <<
+ dist[counter] << resetiosflags(ios::left)
+ << setw(14) << fare[counter] <<
+ resetiosflags(ios::left)
+ << setw(14) << "N/A"
+ << endl;
+ }
+ else
+ cout << setiosflags(ios::left) << setw(5)
+ << pickup[counter] << resetiosflags(ios::left)
+ << setw(10) << dropoff[counter] <<
+ resetiosflags(ios::left)
+ << setw(12) << psgrs[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 >> pickup[counter] >> dropoff[counter] >> psgrs[counter]
+ >> dist[counter] >> fare[counter] >> toll[counter];
+ }
+
+ return counter;
+}
+void WriteOutputFile(ofstream& outFile, int pickup[], int dropoff[], int
+ psgrs[], 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)
+ << pickup[r] << resetiosflags(ios::left)
+ << setw(10) << dropoff[r] <<
+ resetiosflags(ios::left)
+ << setw(12) << psgrs [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";
}
diff --git a/BlankConsoleLab/BlankConsoleLab.vcxproj b/BlankConsoleLab/BlankConsoleLab.vcxproj
index db2e734..d2e3ee2 100644
--- a/BlankConsoleLab/BlankConsoleLab.vcxproj
+++ b/BlankConsoleLab/BlankConsoleLab.vcxproj
@@ -29,26 +29,26 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
- <PlatformToolset>v142</PlatformToolset>
+ <PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
- <PlatformToolset>v142</PlatformToolset>
+ <PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
- <PlatformToolset>v142</PlatformToolset>
+ <PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
- <PlatformToolset>v142</PlatformToolset>
+ <PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>