Taking the sum of values from a stream
#include <iostream>
#include <iterator>
using std::cout;
using std::endl;
using std::cin;
using std::istream_iterator;
template <typename Iter>
double mySum (Iter begin, Iter end) {
double sum = 0.0;
for( ; begin != end ;)
sum += *begin++;
return sum;
}
int main() {
cout << "Ctrl-Z to stop" << endl;
double av = mySum(istream_iterator<double>(cin), istream_iterator<double>());
cout << "The sum value is " << av << endl;
return 0;
}
/*
Ctrl-Z to stop
^Z
The sum value is 0
*/
Related examples in the same category