5 REM ** HP CONTRIBUTED LIBRARY 2/75 ** 10 REM******AUTOMATIC ITEM ANALYSIS PROGRAM********************* 20 REM*****WORKS FROM RAW RESPONSE LETTERS. RESPONSE ALTERNATIVES 30 REM ARE A,B,C,D,E. OMITTED RESPONSES SHOULD BE CODED'O'. 40 REM DATA IS ENTERED VIA 'DATA' STATEMENTS AT END OF PROGRAM. 50 REMPROGRAM WILL COPE WITH MAX. OF 50 ITEMS 60 REMPRE-REQUIRED DATA ARE 1)STRING OF CORRECT RESPONSES 70 REM 2)NUMBER OF STUDENTS(48MAX) 80 REM*********************:J.R.T. OCT.1973***************************: 90 DIM A$[50],B$[50],X[50],W[50],C$[3] 100 FILES STDT 110 PRINT "ENTER NUMBER OF STUDENTS INVOLVED IN TEST"; 120 INPUT N 130 PRINT " HOW MANY ITEMS IN THE TEST"; 140 INPUT N1 145 PRINT "STDT.NO. RIGHT/WRONG/OMIT SCORE" 150 READ A$ 160 FOR C=1 TO N 170 READ B$ 180 LET W=R=Q=0 190 FOR I=1 TO N1 200 IF B$[I,I]="O" THEN 240 210 IF B$[I,I]=A$[I,I] THEN 260 220 W=W+1 230 GOTO 270 240 Q=Q+1 250 GOTO 270 260 R=R+1 270 NEXT I 280 S=R 290 PRINT C,R;W;Q,R/N1 300 PRINT #1,C;B$,S 310 X[C]=S 320 W[C]=C 330 NEXT C 340 LET E=0 350 FOR C=1 TO N-1 360 IF X[C] <= X[C+1] THEN 440 370 E=E+1 380 T=X[C] 390 X[C]=X[C+1] 400 X[C+1]=T 410 T=W[C] 420 W[C]=W[C+1] 430 W[C+1]=T 440 NEXT C 450 IF E=0 THEN 470 460 GOTO 340 470 C=INT(N*.27) 480 IF (N*.27)-C <= .5 THEN 520 490 C=C+1 500 C1=C 510 PRINT '10'10'10'10 520 PRINT "LOWER GROUP OF";C;"WITH NUMBER OF ITEMS CORRECT" 530 F=0 540 FOR I=1 TO C 550 D=W[I] 560 PRINT W[I];X[I] 570 GOSUB 1550 580 NEXT I 590 F=1 600 IF 2*INT(N/2)=N THEN 630 610 C2=INT((N+1)/2) 620 GOTO 640 630 C2=INT(N/2) 640 FOR I=C+1 TO C2 650 D=W[I] 660 GOSUB 1550 670 NEXT I 680 F=2 690 FOR I=C2+1 TO N-C 700 D=W[I] 710 GOSUB 1550 720 NEXT I 730 PRINT '10'10'10'10 740 PRINT "TOP GROUP WITH NUMBER OF ITEMS CORRECT" 750 F=3 760 FOR I=N-C+1 TO N 770 D=W[I] 780 PRINT W[I];X[I] 790 GOSUB 1550 800 NEXT I 810 S1=S2=0 820 FOR I=1 TO N 830 S1=S1+X[I] 840 S2=S2+X[I]^2 850 NEXT I 860 M=S1/N 870 V=S2/N-(S1/N)^2 880 S=SQR(V) 890 PRINT "MEAN=";M;"VARIANCE=";V;"STD. DEV.=";S 895 PRINT '10'10'10'10'10 900 PRINT "DO YOU WANT STANDARDISED SCORES"; 910 INPUT C$ 920 IF C$="NO" THEN 1000 930 PRINT "ENTER MEAN AND STANDARD DEVIATION ONTO WHICH YOU" 940 PRINT "WISH THE RESULTS TO BE STANDARDISED"; 950 INPUT F1,F2 955 PRINT '10'10'10'10'10 956 PRINT "NO. SCORE" 960 FOR I=1 TO N 970 M1=INT(((X[I]-M)/S)*F2+F1) 980 PRINT W[I];M1 990 NEXT I 1000 U2=U3=U4=0 1005 PRINT '10'10'10'10'10 1006 PRINT "ITEM ANALYSIS" 1010 FOR Q=1 TO N1 1020 U=U1=L=L1=A=B=C=D=O=G=E=0 1030 FOR I=1 TO N 1040 READ #1,I;B$,S,F 1050 IF B$[Q,Q]#A$[Q,Q] THEN 1190 1060 IF F=0 THEN 1110 1070 IF F=3 THEN 1130 1080 IF F=1 THEN 1150 1090 IF F=2 THEN 1170 1100 GOTO 1180 1110 L=L+1 1120 GOTO 1180 1130 U=U+1 1140 GOTO 1180 1150 L1=L1+1 1160 GOTO 1180 1170 U1=U1+1 1180 G=G+1 1190 IF B$[Q,Q]="O" THEN 1250 1200 IF B$[Q,Q]="A" THEN 1270 1210 IF B$[Q,Q]="B" THEN 1290 1220 IF B$[Q,Q]="C" THEN 1310 1230 IF B$[Q,Q]="D" THEN 1330 1240 IF B$[Q,Q]="E" THEN 1350 1250 O=O+1 1260 GOTO 1360 1270 A=A+1 1280 GOTO 1360 1290 B=B+1 1300 GOTO 1360 1310 C=C+1 1320 GOTO 1360 1330 D=D+1 1340 GOTO 1360 1350 E=E+1 1360 NEXT I 1370 F=G/N 1380 R=(U-L)/C1 1390 PRINT "QUESTION NO.";Q;"ANSWER ";A$[Q,Q] 1400 PRINT "RESPONSE FREQUENCIES";A;B;C;D;E;O 1410 PRINT "UPPER=";U;"MIDDLE UPPER=";U1;"MIDDLE LOWER=";L1;"LOWER=";L 1420 PRINT "FACILITY=";F;"DISCRIMINATION=";R 1430 PRINT 1440 PRINT 1450 PRINT 1460 PRINT 1470 PRINT 1480 U4=U4+U+L 1490 U2=U2+(U+L)^2 1500 U3=U3+U-L 1510 NEXT Q 1520 R=(N1/(N1+1))*(1-(2*C1*U4-U2)/(.667*U3^2)) 1530 PRINT "RELIABILITY KR(20) =";R 1540 STOP 1550 READ #1,D;B$,S 1560 PRINT #1,D;B$,S,F 1570 RETURN 1580 END