10 COM X[103,22],M[19,19],U[19,19],Q[20],V[20],P[78] 30 COM M$[60],N$[72] 40 COM N,K,N8,K8,N9,K9,Q9,Q7,Q5,Q4,Q3,Q2,Q1 45 COM I3,I4,U9,X$[20] 50 REM:2NOV73 52 REM:>RANK 60 DIM W[16],H[450],A$[12],C$[12],C[16] 61 DIM R$[6] 62 IF Q[1]#0 THEN 70 64 CHAIN "$IDA29",210 70 MAT H=ZER[N] 80 MAT W=ZER 90 MAT C=ZER 2000 GOTO Q9 OF 2005,2010,2020 2005 PRINT "* GIVE VARIABLE NAME OR COLUMN NUMBER FOR THE " 2010 PRINT " VARIABLE TO BE RANKED : "; 2015 GOTO 2025 2020 PRINT "* VARIABLE : "; 2025 ENTER 30,Q8,C$ 2030 PRINT 2035 IF Q8>0 THEN 2050 2040 GOSUB 4000 2045 GOTO 2020 2050 GOSUB 4500 2055 I9=Z9 2060 IF I9=0 THEN 2040 2065 GOTO Q9 OF 2070,2075,2085 2070 PRINT "* GIVE COLUMN NAME OR COLUMN NUMBER FOR " 2075 PRINT " COLUMN RECEIVING RANKINGS : "; 2080 GOTO 2090 2085 PRINT "* RECEIVING COLUMN : "; 2090 ENTER 30,Q8,C$ 2095 PRINT 2100 IF Q8>0 THEN 2135 2105 PRINT "AFTER THE COLUMN IS RANKED IN ASCENDING ORDER, WHICH COLUMN" 2110 PRINT "IN THE DATA MATRIX DO YOU WANT TO PLACE THE RANKS? IT CAN BE" 2115 PRINT USING 2116;I9 2116 IMAGE "ANY COL. NO. IN THE ACTIVE MATRIX EXCEPT",3D,"," 2120 PRINT USING 2121;K+1 2121 IMAGE "OR IT CAN BE PLACED IN THE NEW COLUMN",3D 2125 PRINT 2130 GOTO 2085 2135 GOSUB 4500 2140 J9=Z9 2141 IF I9#J9 THEN 2145 2142 PRINT "RECEIVING COLUMN CANNOT OCCUPY THE SAME COLUMN AS" 2143 PRINT "THAT OF THE VAR. TO BE RANKED. PLEASE RE-ENTER." 2144 GOTO 2085 2145 IF J9=0 OR J9>K+1 THEN 2160 2150 IF J9=K+1 THEN 2220 2155 GOTO 2180 2160 PRINT "YOU HAVE SPECIFIED AN INVALID COLUMN, PLEASE SELECT A" 2165 PRINT "DIFFERENT COLUMN LESS THAN OR EQUAL TO ";K+1 2170 PRINT 2175 GOTO 2085 2180 PRINT "REQUEST WILL DESTROY OLD DATA IN RECEIVING COLUMN." 2185 PRINT "WANT TO PROCEED ?"; 2195 ENTER 60,Q8,R$ 2200 IF Q8<0 THEN 2105 2205 IF R$[1,1]="Y" THEN 2225 2210 PRINT 2215 GOTO 2085 2220 K=K+1 2225 N0=0 2230 FOR I=Q4 TO N 2235 IF X[I,K9+2]=0 THEN 2255 2240 N0=N0+1 2245 H[N0]=X[I,I9] 2255 NEXT I 2260 GOSUB 6000 2265 Q[3]=1 2275 FOR I=Q4 TO N 2280 IF X[I,K9+2]=0 THEN 2315 2285 FOR J=1 TO N0 2290 IF X[I,I9]#H[J] THEN 2310 2295 X[I,J9]=J 2300 H[J]=10^(-30) 2305 GOTO 2315 2310 NEXT J 2315 NEXT I 2400 X[N9+1,J9]=(N0+1)/2 2410 X[N9+2,J9]=SQR(N0*(N0+1)/12) 2420 X[N9+3,J9]=X[N9+3,I9] 3000 IF Q3#1 THEN 9998 3010 PRINT LIN(1);"NAME OF NEW VARIABLE = "; 3020 INPUT C$ 3030 IF J9>10 THEN 3060 3040 M$[6*J9-5,6*J9]=C$[1,6] 3050 GOTO 9998 3060 N$[6*J9-65,6*J9-60]=C$[1,6] 3070 GOTO 9998 3080 RETURN 4000 IF Q3=1 THEN 4100 4010 PRINT LIN(1),"FOR YOUR REFERENCE :" 4040 PRINT LIN(1),"COLUMN 1ST OBSERVATION" 4045 PRINT 4050 FOR J=1 TO K 4060 PRINT USING "2X,DD,6X,D.5DE";J,X[Q4,J] 4070 NEXT J 4080 GOTO 4185 4100 PRINT LIN(1),"THESE ARE THE VARIABLES IN THE DATA MATRIX :" 4110 PRINT "COLUMN NAME" 4115 PRINT 4120 FOR J=1 TO K 4130 IF J>10 THEN 4170 4140 PRINT USING 4150;J,M$[6*J-5,6*J] 4150 IMAGE 2X,DD,4X,6A 4160 GOTO 4180 4170 PRINT USING 4150;J,N$[6*(J-10)-5,6*(J-10)] 4180 NEXT J 4185 PRINT 4190 RETURN 4500 FOR I=1 TO 10 4510 IF M$[6*I-5,6*I]=C$[1,6] THEN 4730 4520 NEXT I 4530 FOR I=1 TO 11 4540 IF N$[6*I-5,6*I]=C$[1,6] THEN 4750 4550 NEXT I 4560 RESTORE 4670 FOR I=1 TO 20 4680 READ A$ 4690 IF A$=C$ THEN 4730 4700 NEXT I 4710 Z9=0 4720 GOTO 4760 4730 Z9=I 4740 GOTO 4760 4750 Z9=10+I 4760 RETURN 6000 I=1 6010 M1=1 6020 J=N0 6030 IF I >= J THEN 6400 6040 K1=I 6050 I2=(J+I)/2 6060 T=H[I2] 6070 IF H[I] <= T THEN 6110 6080 H[I2]=H[I] 6090 H[I]=T 6100 T=H[I2] 6110 L1=J 6120 IF H[J] >= T THEN 6230 6130 H[I2]=H[J] 6140 H[J]=T 6150 T=H[I2] 6160 IF H[I] <= T THEN 6230 6170 H[I2]=H[I] 6180 H[I]=T 6190 T=H[I2] 6200 GOTO 6230 6210 H[L1]=H[K1] 6220 H[K1]=T1 6230 L1=L1-1 6240 IF H[L1]>T THEN 6230 6250 T1=H[L1] 6260 K1=K1+1 6270 IF H[K1]= 11 THEN 6040 6450 IF I=1 THEN 6030 6460 I=I-1 6470 I=I+1 6480 IF I=J THEN 6400 6490 T=H[I+1] 6500 IF H[I] <= T THEN 6470 6510 K1=I 6520 H[K1+1]=H[K1] 6530 K1=K1-1 6540 IF T