// min.c  P. Conrad  for CISC105 Fall 2004
// Find minimum of a sequence of numbers

#include <stdio.h>
#include <stdlib.h>

#define SENTINEL -1

int main(void)
{

  FILE *input;
  int numFromFile;

  int min, count;

  /* open file and check for success */ 

  input = fopen("integers.dat","r");
  
  if (input==NULL)
    {
      fprintf(stderr,"Could not open integers.dat");
      exit(-1);
    }
  count = 0; 

  /* read sequence of data from file until sentinel value reached */

  fscanf(input,"%d",&numFromFile);
  while(numFromFile != SENTINEL)
    {
      
      if (count==0)
	{
	  /* initialize min to first valid value in file */
	  min = numFromFile;
	}
      else
	{    
	  if (numFromFile < min)
	    min = numFromFile;
	}
      count ++;
      fscanf(input,"%d",&numFromFile);

    }

  /* report results */

  if (count == 0)
    printf("File contains no valid data\n");
  else
    printf("Min is %d\n",min);
  
  return 0;

}

