Write a function whose job is to input #'s, non-# to quit, recover from the input failure by calling recover(), and tell main some statistics about the numbers read.
A. unsigned readA();
Read unsigned #'s, non-# to quit, recover, return the sum of all #'s read.
For example, if main says
cout <<"The total is " <
and if the user types
2 4 6 8 blah
then readA will read the numbers 2, 4, 6, 8, keeping track of the total of the numbers read, readA will then choke on the "blah", readA will then, call recover() so that cin recovers from the input failure and moves past the "blah", readA will then return the 20, then main will resume the cout statement so that it outputs
The total is 20
B. void readB( double & sum );
Same as above, except that readB informs main of the answer by setting a reference arg instead of by giving a return value.
main should call readB and main should output the answer.
C. double readC();
This time readC returns the largest #. readC should c&d if there aren't any #'s before the input failure.
D. void readD( double & max );
readD, like above, informs main of the largest #, again complaining and dying if there aren't any numbers, but this time readD informs main of the answer through a reference arg instead of a return value.
E. void readE( double & max, double & min, double & average );
Like above, but this time there are 3 values that the function informs the main function of instead of just 1. (As readE moves through the input data, you'll need to keep track of 4 quantities as you go:
the largest # seen so far
the smallest # seen so far
the number of #'s seen so far
the sum of the #'s seen so far
)