/***************************************************
Average of numbers

Write a program that reads in positive integers from
the user, each separated by a space, and the whole
terminated by a negative number (e.g. 3 22 10 -2),
and returns the average of the numbers entered (not
including the terminated negative number!).  Note
that the average might not be an integer!
***************************************************/
#include "si204.h"

int main() {
  fputs("Enter numbers separated by spaces"
        " and ending with a negative.\n", stdout);

  // initialization
  int sum = 0;
  int howmany = 0;
  int nextnum;

  // read first number
  nextnum = readnum(stdin);

  // Loop while the user enters more data
  while (nextnum >= 0) {
    sum = sum + nextnum;
    howmany = howmany + 1;
    nextnum = readnum(stdin);
  }

  double average = sum / (double)howmany;

  // write out result
  fputs("The average is ", stdout);
  writenum(average, stdout);
  fputs("\n", stdout);

  return 0;
}