001 REM ******TEST 1 003 REM TEST IF 004 REM TEST > 010 IF -4 .GT. -2, 040 020 PRINT 'PASS 1' 030 GOTO 050 040 PRINT 'FAIL 1' 045 REM 050 IF -2 .GT. -4, 080 060 PRINT 'FAIL 2' 070 GOTO 100 080 PRINT 'PASS 2' 090 REM 100 IF -4 .LT. -2, 130 110 PRINT 'FAIL 3' 120 GOTO 140 130 PRINT 'PASS 3' 135 REM 140 IF -2 .LT. -4, 170 150 PRINT 'PASS 4' 160 GOTO 180 170 PRINT 'FAIL 4' 175 REM 180 IF 1 .LT. 2, 210 190 PRINT 'FAIL 5' 200 GOTO 230 210 PRINT 'PASS 5' 220 REM 230 IF 2 .LT. 1, 260 240 PRINT 'PASS 6' 250 GOTO 270 260 PRINT 'FAIL 6' 265 REM 270 IF 2 .GT. 1, 295 280 PRINT 'FAIL 7' 290 GOTO 310 295 PRINT 'PASS 7' 300 REM 310 IF 1 .GT. 2, 340 320 PRINT 'PASS 8' 330 GOTO 999 340 PRINT 'FAIL 8' 400 REM 999 END 001 REM ******TEST 2 002 REM TEST EXPRESSION PROCESSIG 010 LET A = 2 + 3 * 4 - 7 020 PRINT A 030 REM PRINTS 7 040 LET B = 3 + 3 * (7 - 4) 050 PRINT B 060 REM PRINTS 12 070 LET B = 3 + 3 * (4 - 7) 080 PRINT B 090 REM PRINT 6- 100 LET C = -(2*6) + 24 11O PRINT C 120 REM PRINTS 12 130 LET A = 2 + 3 * -(4*8) 135 PRINT A 140 REM PRINT 94- 999 END 001 REM *******TEST 3 002 REM TEST SUBSTRING 020 LET C = 345 030 LET B = 214 040 LET A$ = B(9,1) 041 PRINT A$ 042 REM PRINTS 1 045 LET D = 9 046 LET E = 1 047 LET B$ = B(D-1,E) 050 PRINT B$ 051 REM PRINTS 2 060 LET B$ = C(D-1,2) 061 PRINT B$ 062 REM PRINTS 34 999 END 001 REM ******* TEST 4 002 REM TEST GOSUB STACK OVERFLOW 010 LET A = 0 020 GOSUB 100 100 LET A = A + 1 110 PRINT A 115 GOSUB 100 120 RETURN 130 PRINT 'FAIL' 500 END 001 REM ******** TEST 5 010 REM TEST FOR/NEXT STACK OVERFLOW 015 LET A = 0 020 FOR I = 1, 20, 1 025 LET A = A + 1 030 PRINT I + A 040 GOTO 020 100 END 001 REM ******** TEST 6 010 REM TESTING FOR LOOP VARIATIONS 060 PRINT 'VAR(1), +LIMIT(3), +STEP(1)' 070 FOR I = 1, 3, 1 075 PRINT I 080 NEXT 090 PRINT 'VAR(-3),LIMIT(1), STEP(1)' 100 FOR I = -3, 1, 1 110 PRINT I 115 NEXT 120 PRINT 'VAR(2),-LIMIT(-2), STEP(-1)' 130 FOR I = 2, -2, -1 140 PRINT I 145 NEXT 150 PRINT 'VAR(-2),LIMIT(-5), STEP(-1)' 155 FOR I = -2, -5, -1 160 PRINT I 170 NEXT 180 PRINT 'VAR(5), LIMIT(4), STEP(1)' 190 FOR I = 5, 4, 1 200 PRINT I 999 END 001 REM ******TEST 7 010 REM TEST NUMERIC VARIABLES 020 LET A = 1 030 LET B = 2 040 LET C = 3 050 LET D = A + B * C 060 PRINT D 070 REM PRINTS 7 080 LET D = D + A 090 PRINT D 100 REM PRINTS 8 110 LET A = A + 1 120 LET D = D - A 130 PRINT D 140 REM PRINTS 6 150 LET D = -D 160 PRINT D 170 REM PRINTS 6- 999 END 001 REM ******* TEST 8 010 REM TEST SUBSTRING MANIPULATIONS 020 LET A$ = 'HELLO WORLD' 030 FOR I = 1, 11, 1 040 PRINT A$(I,1) 050 NEXT 060 FOR I = 11,1,-1 070 LET B$ = B$ + A$(I,1) 080 PRINT B$ 090 NEXT 100 FOR I = 1, 11, 1 110 PRINT A$(1,I) 120 NEXT 130 REM END WITH A ERROR 140 PRINT A$(2,11) 999 END 001 REM ******* TEST 9 010 REM TEST IF WITH STRINGS 020 LET A$ = 'ABC' 030 LET B$ = 'BCD' 040 IF A$(2,2) .EQ. B$(1,2),070 050 PRINT 'FAIL 1' 060 GOTO 080 070 PRINT 'PASS 1' 080 IF A$(1,1) .LT. B$(1,1), 110 090 PRINT 'FAIL 2' 100 GOTO 120 110 PRINT 'PASS 2' 120 IF B$(1,1) .GT. A$(1,1), 150 130 PRINT 'FAIL 3' 140 GOTO 160 150 PRINT 'PASS 3' 999 END 001 REM ******* TEST 10 010 REM SYNTAX ERRORS 020 LE T= T + 1 030 LET T = -1 L 2 040 LET T = A + A$ 050 LET A$ = A$ .LT. B$ 055 LET A = 1 + A$ .EQ. B$ 060 IF A$ .GT C$,999 070 IF A$ .LT. C$ 080 IF A$ .EQ. C$, 090 FOR I = 10,30 100 GOSUB 110 GOTO A$ 120 PRINT 1,2 130 PRINT A$ - B$ 140 PRINT A$ - C 150 LET A$ = 'ABC' + 4 * 8 + 'DEF' 160 LET A$ = 'ABC' + (4 * 8) + 'DEF' 999 END 001 REM ******** TEST 11 010 REM NUMBER AS STRINGS 020 LET C$ = 123 030 LET D$ = -456 040 PRINT C$ 050 PRINT D$ 060 PRINT C$(8,4) 070 PRINT D$(8,4) 075 PRINT 2 + 4 + 6 080 REM 085 LET S = 1024 090 LET M$ = S 100 PRINT 'THE PRICE IS: ' + '$' + M$(7,2) + '.' + M$(9,3) 110 LET S = -S 115 LET M$ = S 116 PRINT 'THE PRICE IS: ' + '$' + M$(7,2) + '.' + M$(9,3) 117 REM 120 LET C$ = 123 130 LET D$ = -456 140 PRINT C$ 150 PRINT D$ 155 PRINT C$ + D$ 160 PRINT C$(8,4) 170 PRINT D$(8,4) 180 PRINT D$(11,1) 999 END 001 REM ******** TEST 11 010 REM TESTING DATA AND READ 010 DATA 1,2,3 020 DATA 'A','B','C' 025 REM 030 FOR I = 1, 3, 1 040 READ A 050 PRINT A 055 NEXT 056 REM 060 FOR I = 1, 3, 1 070 READ A$ 080 PRINT A$ 090 NEXT 100 REM 130 FOR I = 1, 3, 1 140 READ A 150 PRINT A 155 NEXT 156 REM 160 FOR I = 1, 3, 1 170 READ A$ 180 PRINT A$ 190 NEXT 200 REM 210 DATA 4,5,6 220 DATA 'D','E','F' 230 REM WILL READ BEYOND END OF DATA 240 REM AND GIVE AND ERROR MESSAGE 250 READ B 999 END