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:30AUG73 150 DIM D$[10],B$[10] 160 C1=0 200 GOTO Q9 OF 210,210,400 210 PRINT '10"WANT LIST OF SUBCOMMAND NAMES "; 220 INPUT B$ 230 IF B$[1,1]="N" THEN 350 240 PRINT '10"COMMAND PROCEDURE" 250 PRINT "******* *********" 260 PRINT " SYST SYSTEMATIC SAMPLING" 270 PRINT " RAN1 SIMPLE RANDOM SAMPLING BY SORTING" 280 PRINT " RAN2 SIMPLE RANDOM SAMPLING BY DRAWING RANDOM NUMBERS" 290 PRINT " SRAN STRATIFIED RANDOM SAMPLING" 320 PRINT " NONE NONE OF THE ABOVE" 330 GOTO 8900 340 GOTO Q9 OF 350,350,400 350 PRINT '10"*WHICH PROCEDURE DO YOU WANT TO USE? "; 360 ENTER 30,Q8,D$ 370 PRINT 380 IF Q8>0 THEN 470 390 GOTO 240 400 C1=C1+1 410 PRINT '10"*WHICH PROCEDURE ?"; 420 ENTER 30,Q8,D$ 430 PRINT 440 IF Q8>0 THEN 470 450 IF C1=1 THEN 240 460 GOTO 350 470 IF D$[1,4]="SYST" THEN 2000 480 IF D$[1,4]="RAN1" THEN 2500 490 IF D$[1,4]="RAN2" THEN 3000 500 IF D$[1,4]="SRAN" THEN 4000 540 IF D$[1,4]="NONE" THEN 9998 550 REM 560 REM 570 REM 580 PRINT "INVALID COMMAND" 590 GOTO 340 2000 REM: SYSTEMATIC SAMPLING IMPLEMENTATION 2010 GOTO 4005 2500 GOSUB 8800 2510 CHAIN "$IDA13A" 3000 GOSUB 8800 3010 CHAIN "$IDA13B" 4000 REM:SRAN IMPLEMENTATION --OLD HVR13 4005 GOTO Q9 OF 4014,4014,4010 4010 PRINT '10"*POPULATION SIZE ?"; 4012 GOTO 4015 4014 PRINT '10"*SIZE OF POPULATION TO BE SAMPLED ?"; 4015 ENTER 30,Q8,N 4020 PRINT 4025 IF Q8>0 THEN 4047 4030 PRINT '10"NEED HELP "; 4035 INPUT B$ 4040 IF B$[1,1]="N" THEN 4010 4042 PRINT '10"YOU WILL GET A LIST OF SUBCOMMAND NAMES" 4044 PRINT "FOR WHICH YOU MAY REQUEST FURTHER EXPLANATIONS."'10'13 4046 GOTO 240 4047 IF N=INT(N) AND N>1 THEN 4050 4048 PRINT "TRY AGAIN! GIVE AN INTEGER >1." 4049 GOTO 4010 4050 PRINT '10"DESIRED MINIMUM SAMPLE SIZE "; 4060 INPUT N1 4061 IF N1<1 THEN 4064 4062 IF N1=INT(N1) AND N10 AND < "N 4066 GOTO 4050 4070 LET K=INT(N/N1) 4080 PRINT '10"THE SAMPLING INTERVAL IS "K'10'13"SO "N1" OBSERVATIONS WILL BE DRAWN" 4090 PRINT "FROM THE FIRST "N1" TIMES "K" ELEMENTS OF THE POPULATION." 4120 N4=N-K*N1 4122 IF N4=0 THEN 4180 4170 PRINT "AN INCOMPLETE INTERVAL OF LENGTH "N4" IS LEFT AT THE END." 4180 PRINT '10"THE FOLLOWING ARE THE SAMPLE ELEMENTS:"'10'13 4182 IF D$[1,4]="SYST" THEN 4400 4190 FOR I=1 TO N1 4200 LET Y=RND(I) 4210 LET Y1=INT(K*Y+1) 4220 LET Y2=(I-1)*K+Y1 4230 PRINT Y2; 4240 NEXT I 4260 IF N4=0 THEN 4370 4330 Y=RND(N1+1) 4340 LET Y1=INT(N4*Y+1) 4350 Y2=N1*K+Y1 4354 PRINT Y2 4356 N1=N1+1 4360 GOSUB 4500 4365 GOTO 4375 4370 GOSUB 4510 4375 INPUT B$ 4377 IF B$[1,1]="N" THEN 9998 4380 GOTO 4005 4400 Y=RND(N1) 4405 Y=INT(K*Y+1) 4410 PRINT Y; 4415 FOR I=2 TO N1 4420 Y=Y+K 4425 PRINT Y; 4430 NEXT I 4435 Y2=Y+K 4440 IF Y2>N THEN 4448 4442 PRINT Y2 4443 N1=N1+1 4445 GOSUB 4500 4447 GOTO 4455 4448 GOSUB 4510 4455 INPUT B$ 4460 IF B$[1,1]="N" THEN 9998 4470 GOTO 4005 4500 PRINT "THE LAST ITEM,"Y2",COMES FROM THE INCOMPLETE" 4505 PRINT "INTERVAL AT THE END." 4510 PRINT '10"ACTUAL SAMPLE SIZE IS "N1 4520 PRINT '10"WANT ANOTHER SAMPLE "; 4530 RETURN 8800 PRINT "WARNING!!!" 8805 IF Q9>2 THEN 8840 8810 GOSUB 9400 8840 PRINT "WANT TO CONTINUE "; 8850 INPUT B$ 8860 IF B$[1,1]="N" THEN 9998 8870 RETURN 8900 PRINT '10"WANT MORE DETAILED EXPLANATIONS "; 8905 INPUT B$ 8910 IF B$[1,1]="N" THEN 340 8915 PRINT '10"WHICH SUBCOMMAND DO YOU WANT EXPLAINED "; 8920 INPUT D$ 8925 IF D$[1,4]="SYST" THEN 9300 8930 IF D$[1,4]="RAN1" THEN 8952 8935 IF D$[1,4]="RAN2" THEN 9200 8940 IF D$[1,4]="SRAN" THEN 9100 8945 PRINT "INVALID RESPONSE!"'10'13"USE SYST, RAN1, RAN2 OR SRAN." 8950 GOTO 8920 8952 GOSUB 9000 8955 PRINT '10"MORE EXPLANATIONS "; 8960 GOTO 8905 8990 D$[1,4]="RAN1" 8992 GOSUB 9000 8995 CHAIN "$IDA13A" 9000 PRINT '10"SIMPLE RANDOM SAMPLING BY SORTING"'10 9002 PRINT " THIS PROCEDURE CAN BE USED TO SORT A POPULATION OF SIZE" 9004 PRINT "N INTO A RANDOM SEQUENCE. THIS IS OFTEN USEFUL FOR THE" 9006 PRINT "FORMATION OF RANDOM SUBGROUPS IN AN EXPERIMENT. IT CAN BE" 9008 PRINT "USED ALSO FOR SEQUENTIAL SAMPLING OF SMALL FINITE POPULATIONS." 9010 PRINT " THE INDIVIDUALS IN YOUR POPULATION MUST HAVE BEEN NUM-" 9012 PRINT "BERED CONSECUTIVELY FROM 1 TO N FOR IDENTIFICATION." 9014 PRINT " WHEN YOU RUN THE PROGRAM YOU ARE ASKED THE SIZE OF" 9016 PRINT "THE POPULATION. YOU ARE THEN GIVEN THE OPTION OF A PRINT-" 9018 PRINT "OUT OF THE ORIGINAL ORDERING OF THE POPULATION WITH THE" 9020 PRINT "RANDOM NUMBERS ASSIGNED TO EACH ELEMENT THEREOF. FINALLY," 9022 PRINT "YOU ARE GIVEN THE PRINTOUT OF THE RANDOM ORDERING OF THE" 9024 PRINT "POPULATION AND THE RANDOM NUMBER OF EACH INDIVIDUAL. FOR" 9026 PRINT "SPEED OF PRINTOUT, YOU CAN ELECT TO SUPPRESS THE RANDOM" 9028 PRINT "NUMBER, SINCE ONLY THE ORDERING IS NEEDED FOR STATISTICAL" 9030 PRINT "PURPOSES." 9032 PRINT " YOU CAN USE THIS PROGRAM FOR SORTS OF UP TO ABOUT 800" 9034 PRINT "ITEMS WITHOUT EXCESSIVE COMPUTER TIME. FOR N=750 A SORT" 9036 PRINT "TOOK LESS THAN ONE MINUTE OF CONNECT TIME." 9038 PRINT '10"WARNING!" 9040 GOSUB 9400 9042 RETURN 9100 PRINT '10"STRATIFIED RANDOM SAMPLING"'10 9102 PRINT " PROCEDURE SELECTS ONE ELEMENT AT RANDOM FROM EACH" 9104 PRINT "SUCCESSIVE GROUP OF K ELEMENTS IN A POPULATION OF N" 9106 PRINT "ELEMENTS NUMBERED SERIALLY FROM 1 TO N. IT SELECTS ONE" 9108 PRINT "ELEMENT FROM THE FINAL INCOMPLETE GROUP, IF THERE IS ONE."'10 9110 GOTO 9310 9200 PRINT '10"SIMPLE RANDOM SAMPLING BY DRAWING OF RANDOM NUMBERS UNTIL" 9202 PRINT "DESIRED UNDUPLICATED SAMPLE SIZE IS REACHED."'10 9204 PRINT " THIS PROCEDURE SELECTS A RANDOM SAMPLE OF N1 FROM A FINITE" 9206 PRINT "POPULATION OF N, SELECTION WITHOUT REPLACEMENT. THE USER IS " 9208 PRINT "ASKED FOR N AND N1, AND THE SAMPLE ELEMENTS ARE PRINTED OUT IN" 9210 PRINT "ORDER OF THEIR LISTING IN THE POPULATION. IT SHOULD BE POSSIBLE" 9212 PRINT "TO SELECT SAMPLES OF SIZE 1000 OR SO WITHOUT USING EXCESSIVE" 9214 PRINT "COMPUTER TIME, UNLESS BOTH N1 AND N1/N ARE LARGE." 9221 PRINT '10"WARNING!" 9222 GOSUB 9400 9224 GOTO 8955 9300 PRINT '10"SYSTEMATIC SAMPLING"'10 9302 PRINT " PROCEDURE SELECTS ONE ELEMENT AT RANDOM FROM THE FIRST K" 9304 PRINT "ELEMENTS IN A POPULATION OF N ELEMENTS NUMBERED SERIALLY FROM" 9306 PRINT "1 TO N, AND THEN SELECTS EVERY SUBSEQUENT KTH ELEMENT OF THE" 9308 PRINT "POPULATION STARTING FROM THIS RANDOMLY SELECTED ELEMENT."'10 9310 PRINT " USER IS ASKED FOR POPULATION SIZE, N, AND MINIMUM RE-" 9312 PRINT "QUIRED SAMPLE SIZE, N1. ACTUAL SAMPLE SIZE MAY BE N1 OR N1+1." 9314 GOTO 8955 9400 PRINT "USE OF "D$[1,4] 9410 PRINT "WILL PREVENT RETURN TO IDA COMMAND LEVEL" 9420 PRINT "AND ANY DATA ENTERED WILL BE LOST." 9430 RETURN 9998 CHAIN "$IDA",150 9999 END