// average1E.cpp
//
// Averages a sequence of integers entered interactively,
// asking user to indicate in advance the number of 
// numbers to be averaged.
//
// Demonstrates count-controlled _while_ loop.
// Demonstrates increment and assignment operators.
//
// Does not prevents division by zero.
// Crashes if the user enters a non-number.

#include <iostream>

using namespace std;

int main()
{
   // Announce purpose of program, and explain how to use it:
   cout << "This program averages a sequence of integers";
   cout << " entered interactively." << endl;

   // Determine how many numbers will be averaged:
   cout << "How many numbers do you want to average?> ";
   int numberOfNumbers;
   cin >> numberOfNumbers;

   // Calculate cumulative sum of numbers entered:

   int sum = 0;        // cumulative sum
   int number;         // number to be entered by user
   int count = 0;      // count of numbers entered

   cout << "Enter the numbers:> ";

   while ( count < numberOfNumbers )
   {
      // Read current input number:
      cin >> number;

      // Add number to cumulative sum:
      sum += number;

      // Count loop iterations:
      count++;
   }  // while

   // Compute the average:
   float average = (float) sum / numberOfNumbers;

   // Output the result:
   cout << "The average is " << average << "." << endl;

   return 0;
}  // function main