// BlankConsoleLab.cpp : This file contains the 'main' function. Program execution begins and ends there. /* * Benjamin Smith * CST 116 * Lab 3 */ #include #include #include using namespace std; int counter = 0; int pickup[50], dropoff[50], passengers[50]; float distance_trav[50], fare[50], toll[50]; double total_fare[50], cost_per_mile[50]; string filename = ""; void Other_Calculations(double money[], int count_var); float Fare_Calc(double moneys[], int counting); int main() { //Setup stream to the already existing file with the data ifstream infile; infile.open("C:\\Users\\cowpi\\source\\repos\\cst116-lab3-Smith-Benjamin\\large.txt"); //If the file opened correctly, it will read all its data to the already initialized arrays if (infile.is_open()) { while (!infile.eof()) { infile >> pickup[counter] >> dropoff[counter] >> passengers[counter] >> distance_trav[counter] >> fare[counter] >> toll[counter]; counter++; } infile.close(); } //If the file didn't open correctly. it will give an error and end the program else { cout << "There was an error loading the in file. You may need to reset its address to one on your local device." << endl; system("pause"); return 0; } //The user may enter the name of the file for which data is to be exported cout << "Please enter the name of the file you wish to export the results into" << endl << "You must include the \".txt\" at the end of your file name: "; cin >> filename; //Setup stream to create or overwrite a file for data to be transferred to ofstream outfile; outfile.open(filename); //If the file opened correctly, it will do the math to output the correct fare and cost-per-mile values to the file if (outfile.is_open()) { for (int counting = 0; counting < counter; counting++) { total_fare[counting] = fare[counting] + toll[counting]; if (distance_trav[counting] != 0) cost_per_mile[counting] = fare[counting] / distance_trav[counting]; else cost_per_mile[counting] = 0; outfile << total_fare[counting] << " " << cost_per_mile[counting] << endl; } cout << "The file was correctly creating and/or written to" << endl; outfile.close(); } //If the file didn't open correctly. it will give an error and end the program else { cout << "There was an error creating or writing to the file" << endl; system("pause"); return 0; } //All other calculations and screen-displayings will be done via this function call Other_Calculations(total_fare, counter); return 0; } void Other_Calculations(double money[], int count_var) { //Output the values of the total travellers, total fares, and cost per person cout << endl << endl << endl; cout << "The total number of travellers is: " << count_var << "." << endl; cout << "The total amount of the fares is: " << Fare_Calc(total_fare, count_var) << "." << endl; cout << "The average cost per person is: " << Fare_Calc(total_fare, count_var) / count_var << "." << endl; } float Fare_Calc(double moneys[], int counting) { //Initialize the sum variable to 0 int sum = 0; //Add up the totals of all the fares for (int count_variable = 0; count_variable < counting; count_variable++) { sum += total_fare[count_variable]; } return sum; }