1  COM Q$[3],C1,I1,I2,I3,I4
2  REM ******         HP TIME SHARED BASIC        *********************
3  REM ******     TSAP1: MEAN AND SCATTERPLOT     *********************
4  REM ******                                     *********************
5  REM ******     CONTRIBUTED PROGRAM - IOWA      *********************
6  REM ******           J. KOLP, K. BURT          **********************
100  FILES $tsapf
125  DIM A$[4],C$[42],C[15],K[15]
148  IF C1=2 THEN 6350
149  IF I1=1 THEN 700
150  IF Q$="NO" THEN 700
151  PRINT "THIS PROGRAM COMPUTES THE AVERAGE (MEAN) FOR ANY VARIABLE."
152  I1=1
155  PRINT 
700  T=0
725  E5=1
750  W=0
800  IF C1=2 THEN 900
850  PRINT "VARIABLE TO BE AVERAGED";
875  GOTO 910
900  PRINT "VARIABLE TO BE PLOTTED";
910  DIM R$[6]
950  INPUT R$
960  READ #1,1;W1,C$
965  FOR Y1=1 TO 40 STEP 3
970  IF R$[1,3]=C$[Y1,Y1+2] THEN 1000
975  NEXT Y1
980  GOTO 6150
1000  PRINT "DATA SELECTION CRITERION";
1050  DIM S$[22]
1055  INPUT S$
1070  PRINT 
1071  PRINT "THAT MAY TAKE A MOMENT, BE RIGHT BACK!"
1072  PRINT 
1150  FOR Y2=1 TO 212
1200  READ #1;A$,B
1205  FOR K=1 TO 14
1210  READ #1;C[K]
1215  NEXT K
1220  READ #1;Q
1225  IF R$[1,3]="RAI" THEN 1325
1230  IF R$[1,3]="FOR" THEN 1340
1235  IF R$[1,3]="FAR" THEN 1340
1240  IF R$[1,3]="LAN" THEN 1340
1245  IF R$[1,3]="IMP" THEN 1340
1250  IF R$[1,3]="EXP" THEN 1340
1255  IF R$[1,3]="MAN" THEN 1340
1260  GOTO 1350
1325  IF B >= 85 THEN 1350
1340  IF C[(Y1+2)/3]=0 THEN 5850
1350  IF S$[1,4]="NONE" THEN 2750
1400  IF S$[1,5]="STATE" THEN 2600
1450  IF S$[1,5]="YEARS" THEN 1950
1500  IF S$[1,5]#"SECTN" THEN 6150
1525  IF S$[8,12]#" AND " THEN 1550
1535  E5=2
1550  IF S$[7,7]="1" THEN 1700
1600  Y=2
1650  GOTO E5 OF 2700,1900
1700  Y=1
1750  GOTO E5 OF 2700,1900
1800  IF A$#S$[7,10] THEN 5850
1850  GOTO 2750
1900  DIM K$[10]
1950  K$="1234567890"
2000  K0=0
2050  FOR R=1 TO 0 STEP -1
2100  FOR S=1 TO 10
2125  IF E5=2 THEN 2175
2150  R0=9-(R*1)
2165  GOTO 2200
2175  R0=21-(R*1)
2200  IF S$[R0,R0]#K$[S,S] THEN 2400
2250  IF S=10 THEN 2450
2300  K0=S*(10^R)+K0
2350  GOTO 2450
2400  NEXT S
2450  NEXT R
2500  IF B#K0 THEN 5850
2550  GOTO E5 OF 2750,2700
2600  IF A$#S$[7,10] THEN 5850
2650  GOTO 2750
2700  IF Q#Y THEN 5850
2750  W=W+1
2800  T=T+C[(Y1+2)/3]
2805  U=C[(Y1+2)/3]
2810  GOTO C1 OF 5850,5650
5650  FOR A1=79 TO 86
5700  IF B#A1 THEN 5800
5750  P[A1-78]=P[A1-78]+U
5800  NEXT A1
5850  NEXT Y2
5900  GOTO C1 OF 5950,6950
5950  IF T=0 THEN 6250
6000  X=T/W
6050  PRINT "THE MEAN FOR "R$" WITH A SELECTION CRITERION OF "S$" EQUALS "X
6100  CHAIN "TSAP",880
6150  PRINT "INVALID"
6200  GOTO 1000
6250  PRINT "THE MEAN FOR "R$" WITH A SELECTION CRITERION OF "S$" EQUALS ZERO"
6300  CHAIN "TSAP",880
6350  FOR A2=1 TO 8
6400  L[A2]=0
6450  P[A2]=0
6500  NEXT A2
6550  Z9=0
6600  X1=1
6650  IF Q$="NO" THEN 700
6655  IF I4=1 THEN 700
6700  PRINT "THIS PROGRAM PROVIDES A SCATTER DIAGRAM FOR ANY VARIABLE"
6750  PRINT "TO BE DISPLAYED ON THE VERTICAL AXIS, AGAINST YEARS"
6800  PRINT "DISPLAYED ON THE HORIZONTAL AXIS."
6850  I4=1
6900  GOTO 155
6950  FOR A6=1 TO 8
7000  L[A6]=P[A6]
7050  IF P[A6]<Z9 THEN 7150
7100  Z9=P[A6]
7150  NEXT A6
7200  IF Z9 <= 20 THEN 7550
7250  FOR A7=1 TO 8
7300  X1=Z9/20
7350  L[A7]=INT((P[A7]/X1)+1)
7400  IF L[A7]#21 THEN 7500
7450  L[A7]=20
7500  NEXT A7
7550  PRINT "SCATTERGRAM FOR "R$" WITH A SELECTION CRITERION OF "S$
7560  PRINT "       1790    1800    1810    1820    1830    1840    1850    1860"
7580  PRINT "======================================================================"
7600  FOR A3=20 TO 1 STEP -1
7650  IMAGE #,"        "
7700  PRINT 
7750  PRINT  USING 7800;A3
7800  IMAGE #,2D
7850  PRINT  USING 7900
7900  IMAGE #,"-"
7950  FOR I9=1 TO 8
8000  IF P[I9]=0 OR L[I9]#A3 THEN 8200
8050  PRINT  USING 8100;P[I9]
8100  IMAGE #,8D
8150  GOTO 8250
8200  PRINT  USING 7650
8250  NEXT I9
8300  NEXT A3
8350  PRINT 
8400  PRINT  USING 8850
8450  FOR A9=1 TO 8
8500  IF P[A9]>0 THEN 8650
8550  PRINT  USING 8100;P[A9]
8600  GOTO 8700
8650  PRINT  USING 7650
8700  NEXT A9
8750  PRINT "======================================================================"
8800  PRINT "       1790    1800    1810    1820    1830    1840    1850    1860"
8850  IMAGE #," 0-"
8900  CHAIN "TSAP",900
8950  END 
