1: //rounded_average.cpp
2: //Computes the (rounded) average of all integers on each of several
3: //input lines. Illustrates nested loops, and C-style casts.
5: #include <iostream>
6: using namespace std;
8: int main()
9: {
10: cout << "\nThis program computes the rounded average of all integer "
11: "values on each\nof a number of input lines. Each line of "
12: "integers to be averaged must be\nterminated by the value "
13: "-9999.\n\n";
14: cout << "Press Enter to continue ... "; cin.ignore(80, '\n');
16: int numberOfLines;
17: int value;
18: int sum;
19: int count;
20: int average;
22: cout << "\nEnter number of input lines, or your end-of-file "
23: "character to quit: ";
24: cin >> numberOfLines; cin.ignore(80, '\n');
26: while (cin)
27: {
28: for (int lineNumber=1; lineNumber<=numberOfLines; lineNumber++)
29: {
30: cout << "\nEnter integer values for line number "
31: << lineNumber << " below (end with -9999):\n";
32: sum = 0;
33: count = 0;
34: cin >> value;
35: while (value != -9999)
36: {
37: sum = sum + value;
38: count++;
39: cin >> value;
40: }
41: average = int(double(sum) / count + 0.5);
42: cout << "The rounded average of the values "
43: << "on line number " << lineNumber
44: << " is " << average << ".\n";
45: }
46: cout << "\n\nEnter number of input lines, or end-of-file "
47: "character to quit: ";
48: cin >> numberOfLines; cin.ignore(80, '\n');
49: }
50: cout << endl;
51: }