Chapter 10 // Exercise 1
Write a program that produces the sum of all the numbers in a file of whitespace-separated integers.
Main.cpp
//--------------------------------------------// //main.cpp //--------------------------------------------//
#include <iostream> #include <string> #include <fstream> #include <vector> #include <conio.h> using namespace std;
//create a file with white-space separated integers
void createFile()
{
ofstream readOut{ "integers.txt" };
if (!readOut)
cout << "Error opening file" << endl;
string integers; cout << "Enter a list of whitespace separated integers: (press enter when done)\n>>"; getline(cin, integers);
readOut << integers; }
//read in from a file
vector<int> readInIntegersFromFile()
{
vector<int> integers;
ifstream readIn{ "integers.txt" };
if(!readIn)
cout << "Error opening file" << endl;
int temp;
while (!readIn.eof())
{
readIn >> temp;
integers.push_back(temp);
}
return integers; }
//add numbers together
int sumOfIntegers(vector<int>& v)
{
int sum = 0;
for (uint32_t i = 0; i < v.size(); ++i) sum += v[i];
return sum; }
int main()
{
createFile();
vector<int> integers = readInIntegersFromFile(); int sum = sumOfIntegers(integers);
cout << "Sum: " << sum << endl;
cout << "\nPress any key..."; _getch();
return 0; }
EDIT: 13/01/2020
New version on GitHub: https://raw.githubusercontent.com/l-paz91/principles-practice/master/Chapter%2010/Exercise%201
No comments:
Post a Comment