PROGRAM AVGVAR C======================================================================* C AVGVAR - computes the average and variance of a set of measurements C C This program will read a set of numbers from the terminal C and compute the average and variance of this set of numbers. C Numbers are read until you enter zero. C C Eric Myers 14 June 1994 : Exercise 04 C Department of Physics and Astronomy, Vassar College, Poughkeepsie, NY C (Typed into the file avgvar.f by Matthew Vassar on 19 June 2003) C======================================================================* C Declare all variables: INTEGER N REAL SUM, SUMSQ, X REAL AVG, VAR C==================================================* C Begin: PRINT *, 'This program will compute the average and variance' PRINT *, 'of a set of numbers. Please enter the numbers one' PRINT *, 'at a time. Enter ZERO to stop input and print the' PRINT *, 'final results.' PRINT *, ' ' PRINT *, 'Enter your numbers:' C Initialize counter and sums N = 0 SUM = 0.0 SUMSQ = 0.0 C Read in the data until user enters zero 10 CONTINUE READ *, X PRINT *, X IF(X.EQ.0.0) GOTO 20 C Add to count, sum and sum of squares, and then go get next number N = N + 1 SUM = SUM + X SUMSQ = SUMSQ + X**2 GOTO 10 C Compute final results and display them 20 CONTINUE PRINT *,' ' PRINT *,'You entered ',N,' numbers.' IF(N.GT.0) THEN AVG = SUM / N PRINT *,'The average is: ',AVG ENDIF IF(N.GT.1) THEN VAR = (SUMSQ - N*AVG**2) / (N-1) PRINT *,'The variance is: ',VAR PRINT *,'(The standard deviation is ',SQRT(VAR),')' ENDIF STOP END