Page images
PDF
EPUB

670 REM TABLE NOW HAS LOWEST L CHARACTERS; DO SORT ON THESE 680 GOSUB 2000

690 RESTORE

700 LET N=1

710 REM READ ALL L+L. PUT INTO TABLE ONLY THOSE > HIGHEST OF THE 720 REM LOWEST L CHARACTERS ALREADY SORTED.

730 FOR I=1 TO L+L

740 READ W$

750 IF W$ > Z$ THEN 770

760 GOTO 790

770 GOSUB 4000

780 LET N=N+1

790 NEXT I

800 REM SORT THE HIGH L CHARACTERS.

810 GOSUB 2000

812 PRINT

815 PRINT "IF DOCUMENTATION AGREES WITH ABOVE RESULTS, THEN" 818 PRINT "*** TEST PASSED ***11

[blocks in formation]

850 PRINT "SECTION 206.2: COLLATING MULTI-CHARACTER STRINGS." 860 PRINT

870 PRINT "THIS SECTION DISPLAYS SOME SUGGESTIVE TEST CASES TO" 880 PRINT "SHOW HOW THIS IMPLEMENTATION HANDLES COMPARISONS OF" 890 PRINT "MULTI-CHARACTER STRINGS. ALL STRINGS SHOWN ARE DELIMITED" 895 PRINT "BY APOSTROPHES TO ENABLE THE USER TO DISTINGUISH BLANKS" 897 PRINT "FROM NULL."

[blocks in formation]

1120 PRINT "IF DOCUMENTATION AGREES WITH ABOVE RESULTS, THEN" 1130 PRINT "*** TEST PASSED ***11

[blocks in formation]

2000 REM THIS SUBROUTINE SORTS AND PRINTS THE CHARACTERS IN A$ 2010 REM ALGORITHM IS SIMPLE EXCHANGE SORT

[blocks in formation]

2020 FOR I=1 TO L-1

2030 FOR J=I+1 TO L

2040 LET N=I

2050 GOSUB 3000

2060 LET X$=W$

2070 LET N=J

2080 GOSUB 3000

2090 LET Y$=W$

2100 IF X$ < Y$ THEN 2180

2110 REM SWAP ITH AND JTH CHARACTERS

2120 LET N=I

2130 LET W$=Y$

2140 GOSUB 4000

2150 LET N=J

2160 LET W$=X$

2170 GOSUB 4000

2180 NEXT J

2190 NEXT I

2200 PRINT ".";

2210 FOR N=1 TO L

2220 GOSUB 3000

2230 PRINT W$;".";

2240 NEXT N

2250 PRINT

2260 RETURN

3000 REM SUBROUTINE TO GET NTH CHARACTER INTO W$

3010 IF N > 7 THEN 3030

3020 ON N GOTO 3040, 3060, 3080,3100,3120,3140,3160

3030 ON N-7 GOTO 3180, 3200, 3220, 3240,3260, 3280,3300,3320 3040 LET W$=A$

3050 GOTO 3340

3060 LET W$=B$

3070 GOTO 3340

3080 LET W$=C$

3090 GOTO 3340

3100 LET W$=D$

3110 GOTO 3340

3120 LET W$=E$

3130 GOTO 3340

3140 LET W$=F$

3150 GOTO 3340

3160 LET W$=G$

3170 GOTO 3340

3180 LET W$=H$

3190 GOTO 3340

3200 LET W$=I$

3210 GOTO 3340

3220 LET W$=J$

3230 GOTO 3340

3240 LET W$=K$

3250 GOTO 3340

3260 LET W$=L$

3270 GOTO 3340

3280 LET W$=M$ 3290 GOTO 3340

3300 LET W$=N$

3310 GOTO 3340

3320 LET W$=0$

3340 RETURN

4000 REM SUBROUTINE TO GET W$ INTO NTH CHARACTER

4010 IF N > 7 THEN 4030

4020 ON N GOTO 4040, 4060,4080, 4100,4120,4140,4160

4030 ON N-7 GOTO 4180,4200, 4220,4240,4260,4280, 4300,4320 4040 LET A$=W$

[merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][ocr errors][merged small][merged small][merged small][ocr errors][merged small][ocr errors][ocr errors][merged small][merged small][ocr errors][ocr errors][merged small][merged small][merged small][merged small][merged small][merged small][ocr errors][merged small][merged small][ocr errors][merged small][ocr errors][ocr errors]
[blocks in formation]
[ocr errors]

10 PRINT "PROGRAM FILE 207: ERROR ASSIGNMENT OF A STRING TO A" 20 PRINT "

NUMERIC VARIABLE." 30 PRINT " ANSI STANDARD 9.2" 40 PRINT 50 PRINT "SECTION 207.1: ERROR ASSIGNMENT OF A STRING TO A" 60 PRINT"

NUMERIC VARIABLE." 70 PRINT 80 PRINT "THIS IS A TEST FOR A NON-STANDARD FEATURE OF MINIMAL BASIC." 90 PRINT "TO PASS THIS TEST, THE PROCESSOR MUST EITHER:" 100 PRINT 110 PRINT " 1) ACCEPT THE PROGRAM AND BE ACCOMPANIED BY DOCUMENTATION" 120 PRINT " ACCURATELY DESCRIBING THE FEATURE'S INTERPRETATION" 130 PRINT " BY THE PROCESSOR, OR" 140 PRINT 150 PRINT " 2) REJECT THE PROGRAM WITH AN APPROPRIATE ERROR MESSAGE" 160 PRINT 170 PRINT "SEE THE NBS MINIMAL BASIC TEST PROGRAMS USER'S MANUAL" 180 PRINT "FOR DETAILED CRITERIA." 190 PRINT 200 PRINT"

BEGIN TEST." 210 PRINT 220 PRINT "SETTING A$='123' AND X=111" 230 PRINT 240 LET A$="123" 250 LET X=111 260 PRINT "ABOUT TO EXECUTE: LET X = A$" 270 LET X=A$ 280 PRINT 290 PRINT "RESULTING VALUE OF X = ";X 300 PRINT 310 PRINT "

END TEST."

320 PRINT
330 PRINT "END PROGRAM 207"
340 END

? MIXED STRINGS AND NUMBERS IN LINE 270

10 PRINT "PROGRAM FILE 208: ERROR ASSIGNMENT OF A NUMBER TO A" 20 PRINT "

STRING VARIABLE." 30 PRINT " ANSI STANDARD 9.2" 40 PRINT 50 PRINT "SECTION 208.1: ERROR ASSIGNMENT OF A NUMBER TO A" 60 PRINT "

STRING VARIABLE." 70 PRINT 80 PRINT "THIS IS A TEST FOR A NON-STANDARD FEATURE OF MINIMAL BASIC." 90 PRINT "TO PASS THIS TEST, THE PROCESSOR MUST EITHER:" 100 PRINT 110 PRINT" 1) ACCEPT THE PROGRAM AND BE ACCOMPANIED BY DOCUMENTATION" 120 PRINT "

ACCURATELY DESCRIBING THE FEATURE'S INTERPRETATION" 130 PRINT " BY THE PROCESSOR, OR" 140 PRINT 150 PRINT " 2) REJECT THE PROGRAM WITH AN APPROPRIATE ERROR MESSAGE" 160 PRINT 170 PRINT "SEE THE NBS MINIMAL BASIC TEST PROGRAMS USER'S MANUAL" 180 PRINT "FOR DETAILED CRITERIA." 190 PRINT 200 PRINT

BEGIN TEST." 210 PRINT 220 PRINT "SETTING A$='123' AND X=111" 240 LET A$="123" 250 LET X=111 260 PRINT "ABOUT TO EXECUTE: LET A$ = X" 270 LET A$=X 280 PRINT 290 PRINT "RESULTING VALUE OF A$ = ";A$ 300 PRINT 310 PRINT "

END TEST." 320 PRINT 330 PRINT "END PROGRAM 208" 340 END

? MIXED STRINGS AND NUMBERS IN LINE 270

« PreviousContinue »