123
+ 25
____
The pupil will enter the answer by pressing key 8 then key 4 then key 1 then (RETURN) to complete the answer.
COMMANDS
Key in program and type RUN.
Select problem type.
Enter result then press RETURN.
If correct, main menu is displayed.
If wrong, enter new answer.
100 REM Program P96 - Arithmetic Tutor 110 MODE 6 120 PRINT TAB(12,12)"A R I T H M E T I C" 130 PRINT TAB(14,14)"T U T O R" 140 Z=INKEY(300) 150 VDU 23,224,4,4,4,4,4,4,4,4 160 VDU 23,225,4,7,0,0,0,0,0,0 170 VDU 23,226,0,255,0,0,0,0,0,0 180 REPEAT 190 CLS 200 PRINT "You will be presented with an" 210 PRINT "arithmetic problem. Solve the problem" 220 PRINT "by keying in your solution in the" 230 PRINT "normal manner." 240 PRINT ''"Problems can be given in:" 250 PRINT '"1. Addition" 260 PRINT "2. Subtraction" 270 PRINT "3. Division" 280 PRINT "4. Multiplication" 290 INPUT ''"Make your choice "choice% 300 ON choice% GOSUB 570,660,750,1030 310 INPUT '''"Another run",resp$ 320 UNTIL LEFT$(resp$,1)<>"Y" 330 END 340 350 DEF PROCproblem(s$,result) 360 n1$=STR$(num1) 370 n2$=STR$(num2) 380 PRINT TAB(0,12) SPC(20-LEN(n1$));n1$; 390 PRINT TAB(0,15) SPC(18-LEN(n2$));s$;n2$; 400 PRINT TAB(15,16) STRING$(5,"_") 410 REPEAT 420 b$="" 430 P=19 440 REPEAT 450 correct=FALSE 460 a$=GET$ 470 IF ASC(a$)<>13 THEN b$=a$+b$:PRINT TAB(P,19)a$;:P= P-1 480 UNTIL ASC(a$)=13 490 IF VAL(b$)=result THEN PRINT TAB(5,22)"CORRECT - WEL L DONE":correct=TRUE ELSE PRINT TAB(5,22) "WRONG - TRY AGAIN " 500 Z=INKEY(300) 510 PRINT TAB(5,19) STRING$(20," ") 520 PRINT TAB(5,20) STRING$(20," ") 530 UNTIL correct 540 ENDPROC 550 560 570 REM Addition 580 num1=RND(999) 590 num2=RND(999) 600 CLS 610 PRINT ''" A D D I T I O N" 620 PROCproblem("+ ",num1+num2) 630 RETURN 640 650 660 REM Subtraction 670 num1=RND(999) 680 num2=RND(num1) 690 CLS 700 PRINT ''" S U B T R A C T I O N" 710 PROCproblem("- ",num1-num2) 720 RETURN 730 740 750 REM Division 760 CLS 770 REPEAT 780 num2=RND(9) 790 num1=RND(99)*num2 800 UNTIL INT(num1/num2)=num1/num2 810 PRINT ''" D I V I S I O N" 820 n1$=STR$(num1) 830 n2$=STR$(num2) 840 PRINT TAB(10,12)n2$;CHR$(224);n1$ 850 PRINT TAB(11,13)CHR$(225);STRING$(5,CHR$(226)) 860 REPEAT 870 b$="" 880 P=12 890 REPEAT 900 correct=FALSE 910 a$=GET$ 920 IF ASC(a$)<>13 THEN b$=b$+a$:PRINT TAB(P,14)a$;:P= P+1 930 UNTIL ASC(a$)=13 940 IF VAL(b$)=num1/num2 THEN PRINT TAB(5,22)"CORRECT - WELL DONE":correct=TRUE ELSE PRINT TAB(5,22) "WRONG - TRY AG AIN" 950 Z=INKEY(300) 960 PRINT TAB(5,17) STRING$(20," "); 970 PRINT TAB(5,18) STRING$(20," "); 980 PRINT TAB(5,22) STRING$(20," "); 990 UNTIL correct 1000 RETURN 1010 1020 1030 REM Multiplication 1040 CLS 1050 num1=RND(999) 1060 num2=RND(9) 1070 PRINT ''" M U L T I P L I C A T I O N" 1080 PROCproblem("* ",num1*num2) 1090 RETURN
P97 and P98 French and German Tutorial
These are two implementations of a language vocabulary tutorial. In both cases, the cases, the data is in the form of word pairs starting at line 410. The teacher would insert his own vocabulary starting at line 410.
The program gives the student up to three attempts at each word, and after the tutorial is finished, some statistics are returned.
COMMANDS
Key in program(s) and type RUN.
Follow instructions.
100 REM Program P97 - French Tutorial 110 DIM results(4) 120 @%=2 130 MODE6 140 PRINT TAB(10,12) "FRENCH TUTORIAL" 150 X=INKEY(300) 160 RESTORE 170 180 REPEAT 190 attempt=1 200 READ english$,french$ 210 REPEAT 220 CLS 230 PRINT '''''' 240 PRINT "Attempt number "attempt 250 PRINT ''"English word is "english$ 260 INPUT ''"What is the French "answer$ 270 attempt=attempt+1 280 UNTIL answer$=french$ OR attempt=4 290 IF answer$<>french$ THEN results(4)=results(4)+1 ELS E results(attempt-1)=results(attempt-1)+1 300 UNTIL english$="end" 310 320 CLS 330 PRINT ''' 340 PRINT "Number correct at first attempt is " results(1) 350 PRINT ''"Number correct at second attempt is " results (2) 360 PRINT ''"Number correct at third attempt is " results( 3) 370 PRINT ''"Number of unknown answers" results(4) 380 390 400 DATA yes,oui,no,non,end,"fin"
100 REM Program P97 - German Tutorial 110 DIM results(4) 120 @%=2 130 MODE6 140 PRINT TAB(10,12) "GERMAN TUTORIAL" 150 X=INKEY(300) 160 RESTORE 170 180 REPEAT 190 attempt=1 200 READ english$,german$ 210 REPEAT 220 CLS 230 PRINT '''''' 240 PRINT "Attempt number "attempt 250 PRINT ''"English word is "english$ 260 INPUT ''"What is the German "answer$ 270 attempt=attempt+1 280 UNTIL answer$=german$ OR attempt=4 290 IF answer$<>german$ THEN results(4)=results(4)+1 ELS E results(attempt-1)=results(attempt-1)+1 300 UNTIL english$="end" 310 320 CLS 330 PRINT ''' 340 PRINT "Number correct at first attempt is " results(1) 350 PRINT ''"Number correct at second attempt is " results (2) 360 PRINT ''"Number correct at third attempt is " results( 3) 370 PRINT ''"Number of unknown answers" results(4) 380 390 400 DATA yes,ja,no,nein,end,"Ende"
P99 Spelling
This program can be used as a spelling aid for young children. The instructions for using the program are included with it.
The idea of this program is to give a positive feedback to the pupil by making a game out of spelling. The teacher can change the vocabulary by replacing the data at line 960. If more than six words are required, then change line 370.
This program could be developed as a teaching package, by including an instruction to teacher section, and a report section.
COMMANDS
Key in program and type RUN.
Enter difficulty (1-9), 1 is hardest.
Note word when it appears.
Use key <SHIFT> to move gun left.
Use key <DELETE> to move gun right.
Use key Space to fire.
100 REM Program P99 - Spelling 110 MODE 6 120 PRINT '''"This program can be used as a spelling" 130 PRINT "aid for young children. The user will" 140 PRINT "see the word for 6 seconds then he or" 150 PRINT "she has to shoot the letters of the" 160 PRINT "word from an alphabet at the top of the" 170 PRINT "screen. If the word is spelled" 180 PRINT "correctly a spaceship will cross the" 190 PRINT "screen, to be shot down by the user." 200 PRINT ''"Points are scored for each correct" 210 PRINT "letter, and for shooting down the" 220 PRINT "spaceship." 230 INPUT ''"Enter difficulty (1 to 9)" d 240 z=INKEY(100) 250 260 MODE 4 270 @%=4 280 VDU 19,0,4,0,0,0 290 VDU 23,224,0,60,126,171,255,126,36,36 300 VDU 23,225,24,24,24,24,24,255,255,255 310 VDU 23,226,24,24,24,24,24,24,24,24 320 VDU 23;8202;0;0;0 330 PRINT " abcdefghijklmnopqrstuvwxyz" 340 PRINT TAB(16,30) "SCORE-" 350 X=20:Y=d*3 360 370 FOR K=1 TO 6 380 READ word$ 390 PRINT TAB(1,16)word$ 400 z=INKEY(600) 410 PRINT TAB(1,16) STRING$(40," ") 420 PRINT TAB(X,Y) CHR$(225); 430 flag=TRUE 440 REPEAT 450 DX=INKEY(-1)-INKEY(-90) 460 PRINT TAB(X,Y)" "; 470 X=ABS((X+DX) MOD 39) 480 PRINT TAB(X,Y) CHR$(225); 490 IF (32=INKEY(10)) THEN PROCfire(X) 500 UNTIL LEN(word$)=0 510 IF flag=TRUE THEN PROCship 520 NEXT K 530 END 540 550 DEF PROCfire(X) 560 FOR I=Y-2 TO 1 STEP -1 570 PRINT TAB(X,I)CHR$(226); 580 PRINT TAB(X,I+1) " "; 590 NEXT I 600 PRINT TAB(X,I+1) " "; 610 temp=ASC(LEFT$(word$,1)):word$=MID$(word$,2) 620 IF temp=91+X THEN PROChit(2) ELSE PROCmiss 630 ENDPROC 640 650 DEF PROChit(s) 660 score%=score%+s 670 VDU 19,0,9,0,0,0 680 SOUND 1,-15,53,30 690 z=INKEY(150) 700 VDU 19,0,4,0,0,0 710 PRINT TAB(24,30)score% 720 ENDPROC 730 740 DEF PROCmiss 750 SOUND 0,-15,44,10 760 flag=FALSE 770 ENDPROC 780 790 DEF PROCship 800 Z=0 810 REPEAT 820 Z=Z+1 830 PRINT TAB(Z,2) CHR$(224); 840 PRINT TAB(Z-1,2) " "; 850 UNTIL Z=39 OR 32=INKEY(10) 860 IF Z=39 ENDPROC 870 FOR I=Y-2 TO 2 STEP -1 880 PRINT TAB(X,I) CHR$(226); 890 PRINT TAB(X,I+1) " "; 900 NEXT I 910 PRINT TAB(X,I+1) " "; 920 IF X=Z THEN PROChit(10) ELSE REPEAT Z=Z+1:PRINT TAB(Z, 2) CHR$(224);TAB(Z-1,2) " ";:q=INKEY(10):UNTIL Z=40 930 PRINT TAB(Z,2) " "; 940 ENDPROC 950 960 DATA man,car,police,computer,bus,cat
P100 Counting
This is a program which could have some use in the first years of primary education. It displays a number of monsters on the screen, and the user is required to count the monsters and press the appropriate numeric key.
Only the numbers one through nine are used by the program, the return key is not used.
The program can be used to keep five-year-olds quiet for a little while.
COMMANDS
Key in program and type RUN.
Count the monsters and press the correct numeric key.
100 REM Program P100 - Counting 110 ENVELOPE 1,25,16,12,8,1,1,1,126,0,0,-126,126,126 120 DIMX(10),Y(10) 130 count=RND(9) 140 MODE5 150 *FX9,10 160 *FX10,10 170 *FX 11,0 180 VDU 23,224,24,60,90,126,36,90,66,129 190 VDU 19,0,7;0;19,3,0;0; 200 COLOUR 1 210 220 X(1)=RND(19):Y(1)=RND(25) 230 FOR I=2 TO count 240 X(I)=RND(19):Y(I)=RND(25) 250 FOR J=1 TO I-1 260 IF X(I)=X(J) AND Y(I)=Y(J) THEN I=I-1 270 NEXT J 280 NEXT I 290 300 FOR I=1 TO count 310 PRINT TAB(X(I),Y(I)) CHR$(224) 320 NEXT I 330 340 REPEAT 350 flag=-1 360 PRINT TAB(0,28); 370 PRINT "How many monsters"; 380 ans$=GET$ 390 PRINT CHR$(11);SPC(26);CHR$(11); 400 ans=VAL(ans$) 410 IF ans=count THEN PROCcorrect ELSE SOUND 0,-15,4,20: flag=0 420 UNTIL flag=-1 430 440 RUN 450 DEF PROCcorrect 460 VDU 19,0,13;0; 470 SOUND 1,1,53,100 480 X=INKEY(450) 490 VDU 19,0,7;0; 500 ENDPROC