// IOVec.C
// Name:  Gary T. Leavens
// TA:    Bjarne Stroustrup
// Section:  A1

#include <iostream.h>

void InputVec( int vec[], int& size, int max )
{
  int i = 0;
  // INV: vec[0..i-1] have been read from cin && i <= max
  while (i < max && cin) {
    cin >> vec[i];
    i += 1;
  }
  // ASSERT: not(i < max && cin)
  // && vec[0..i-1] have been read from cin && i <= max
  /* hence */
  // ASSERT: either i <= max or cin is at EOF
  // && vec[0..i-1] have been read from cin
  size = i-1;
}


void OutputVec( const int vec[], int size )
{
  int i = 0;
  // INV: vec[0..i-1] have been added to cout && i <= size
  while (i < size) {
    cout << vec[i] << "  ";
    i += 1;
  }
  cout << endl;
}
