10 REM KIDMATH.BAS IS A SIMPLE AND ENJOYABLE MATH TUTOR FOR KIDS THRU 20 REM GRADE FOUR. IT HAS BEEN WRITTEN IN MICROSOFT BASIC (MBASIC) BY 30 REM WILLIAM E. MACNEILL, 7 STRATFORD ROAD, WINCHESTER MA. 01890, AND 40 REM MAY BE USED, COPIED AND DISTRIBUTED AT THE USER's pleasure. 50 FOR I=1 TO 24:PRINT:NEXT I 60 INPUT "WHAT IS YOUR NAME"; N$:FOR I= 1 TO 24:PRINT:NEXT I 70 PRINT"HI ";N$;" WE ARE GOING TO DO SOME MATH NOW":PRINT 80 INPUT"PRESS THE 'RETURN BUTTON TO CONTINUE";L:IF L <> 0 THEN GOTO 80 90 FOR I=1 TO 24:PRINT:NEXT I:PRINT"CHOOSE WHAT YOU WOULD LIKE TO DO:":PRINT 100 PRINT TAB(5);"1. ADDITION OR":PRINT TAB(5);"2. SUBTRACTION ?":PRINT:PRINT 110 INPUT "WHAT IS YOUR CHOICE (1 OR 2)";C 120 S=0 130 IF C=1 OR C=2 THEN 140 ELSE 90 140 PRINT:PRINT:INPUT"HOW MANY NUMBERS PER LINE (1,2 OR 3)";N:FOR E = 1 TO 24:PRINT:NEXT E 150 PRINT:PRINT:PRINT:PRINT:INPUT"TYPE ANY NUMBER FROM 1 TO 1000 RIGHT NOW";XX:RANDOMIZE XX:FOR LB=1 TO 24:PRINT:NEXT LB 160 ON N GOTO 170,180,190 170 M=10:GOTO 200 180 M=100:GOTO 200 190 M=1000:GOTO 200 200 PRINT:PRINT:PRINT:PRINT"OKAY, ";N$; " HERE IS YOUR FIRST PROBLEM...":PRINT:PRINT:PRINT 210 ON C GOTO 220,430 220 FOR I = 1 TO 10 230 A=INT(RND(1)*M):B=INT(RND(1)*M) 240 A$=STR$(A):B$=STR$(B) 250 IF C=1 THEN 270 260 PRINT TAB(10-LEN(A$));A$:PRINT TAB(5);"-";TAB(10-LEN(B$));B$:GOTO 280 270 PRINT TAB(10-LEN(A$));A$:PRINT TAB(5);"+";TAB(10-LEN(B$));B$ 280 PRINT TAB(5); "-----": INPUT T:PRINT:PRINT 290 IF T= A+B THEN PRINT"RIGHT, ";N$;"!";ELSE 310 300 PRINT:PRINT:NEXT I:GOTO 390 310 S=S+1 320 PRINT "WRONG, YOU SILLY ! TRY AGAIN":INPUT T 330 IF T=A+B THEN 340 ELSE 350 340 :PRINT:PRINT"THAT'S BETTER! NOW, HERE'S THE NEXT PROBLEM...":GOTO 370 350 PRINT:PRINT:PRINT"THE ANSWER IS ";A+B;N$;", FOR HEAVENS SAKE!" 360 PRINT: PRINT"NOW HERE IS THE NEXT PROBLEM...TRY HARDER!":PRINT:PRINT:PRINT:PRINT 370 GOTO 300 380 NEXT J:PRINT"THE ANSWER IS ";A+B;:PRINT:GOTO 300 390 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT"YOU HAVE NOW COMPLETED 10 PROBLEMS ";N$ 400 PRINT"YOU GOT ";10-S;" CORRECT.":IF 10-S=10 THEN FOR V=1 TO 5:PRINT CHR$(7):NEXT V:PRINT "THAT'S JUST TERRIFIC!!!";:PRINT:PRINT:PRINT:ELSE 410 410 INPUT"WOULD YOU LIKE TO PLAY ANOTHER GAME";X$:IF X$="Y" THEN 420 ELSE PRINT:PRINT:PRINT:PRINT"THANK YOU FOR PLAYING WITH ME, KIDDO":PRINT:PRINT:PRINT:PRINT:PRINT"SEE YA LATER..........":RESET:END 420 GOTO 90 430 FOR I=1 TO 10 440 A=INT(RND(1)*M):B=INT(RND(1)*M): IF A>=B THEN 460 ELSE 450 450 P=A:A=B:B=P 460 A$ = STR$(A):B$=STR$(B) 470 PRINT TAB(10-LEN(A$));A$:PRINT TAB(5);"-";TAB(10-LEN(B$));B$ 480 PRINT TAB(5);"-----":INPUT T:PRINT:PRINT 490 IF T=A-B THEN PRINT"RIGHT ON, ";N$;"!" ELSE 510 500 PRINT:PRINT:NEXT I:GOTO 570 510 S=S+1: PRINT"WRONG, YOU SILLY!! TRY AGAIN...":INPUT T 520 IF T=A-B THEN 530 ELSE 540 530 PRINT"THAT'S MUCH BETTER, MY BOY! NOW, HERE'S THE NEXT PROBLEM...":GOTO 500 540 PRINT:PRINT:PRINT:PRINT"THE ANSWER IS ";A-B;" FOR HEAVENS SAKE!!" 550 PRINT:PRINT"NOW, HERE IS THE NEXT PROBLEM...TRY HARDER, ";N$;"!!" 560 GOTO 500 570 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT" YOU HAVE NOW COMPLETED 10 PROBLEMS, ";N$ 580 PRINT"YOU GOT ";10-S;"CORRECT.": IF 10-S =10 THEN PRINT"THAT'S JUST TERRIFIC!!!!!!":PRINT:PRINT:GOTO 410 590 GOTO 410