Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iomanip>
- #include <iostream>
- #include <fstream>
- #include <string>
- #include <vector>
- using namespace std;
- void icountSumAvg(vector<double>, int, int &icount, double &sum, double &avg);
- void display(int, double, double);
- void display(int, double, double, vector<double>, int);
- void swap(vector<double>, int);
- bool testSwap = true; // displays each element if true
- int main()
- {
- ifstream ifile;
- const string FILENAME = "input.txt";
- ifile.open(FILENAME);
- int count = 0;
- double sum = 0, avg = 0;
- if (!(ifile.fail()))
- {
- vector<double> vect;
- double value = 0.0;
- while (!ifile.eof())
- {
- ifile >> value;
- vect.push_back(value);
- }
- int vectSize = vect.size();
- icountSumAvg(vect, vectSize, count, sum, avg);
- if (testSwap = true)
- {
- swap(vect, vectSize);
- display(count, sum, avg, vect, vectSize);
- }
- else
- display(count, sum, avg);
- ifile.close();
- }
- else
- cout << "There was an error opening the file: " << FILENAME << endl;
- system("pause");
- }
- void icountSumAvg(vector<double> values, int size, int &icount, double &sum, double &avg)
- {
- for (int i = 0; i < size; i++)
- {
- icount++;
- sum += values[i];
- }
- avg = sum / icount;
- }
- void swap(vector<double> values, int size)
- {
- double temp;
- for (int i = 0; i < size; i++)
- {
- for (int j = 0; j < i; j++)
- {
- if (values[j] < values[i])
- {
- temp = values[i];
- values[i] = values[j];
- values[j] = temp;
- }
- }
- }
- }
- void display(int count, double sum, double avg, vector<double> values, int size)
- {
- for (int i = 0; i < size; i++)
- {
- cout << "Element " << i + 1 << ": " << values[i] << endl;
- }
- cout <<"Total count: " << count << endl
- << "Total sum: " << sum << endl
- << "Average of numbers: " << avg << endl;
- }
- void display(int count, double sum, double avg)
- {
- cout <<"Total count: " << count << endl
- << "Total sum: " << sum << endl
- << "Average of numbers: " << avg << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement