10 REM *** HP TIME-SHARED BASIC PROGRAM LIBRARY ********************* 11 REM 12 REM TUT06: TUTOR SERIES BASIC LANGUAGE PROGRAMMING COURSE, 13 REM (PART 6 OF 25) 14 REM 36139 (A810) REV A -- 7/71 15 REM 16 REM *** CONTRIBUTED PROGRAM ************************************** 17 REM 100 LET C=0 120 GOTO 150 130 LET C=C+1 140 RETURN 150 PRINT "BACK AGAIN? GOOD. AND I HOPE YOU'RE ALL READY FOR YOUR SIXTH" 160 PRINT "LESSON. BY NOW YOU SHOULD FEEL QUITE COMFORTABLE USING THE" 170 PRINT "'BASIC' LANGUAGE AND THAT'S THE WHOLE IDEA." 180 PRINT 190 PRINT "HERE ARE SOME OF THE TERMS WE HAVE USED IN OUR FIRST FIVE" 200 PRINT "LESSONS. JUST SO WE KNOW WE UNDERST"'1"AND EVERYTHING SO FAR, LET'S" 210 PRINT "CHECK UP A LITTLE BIT. WE'LL LET THE CHOICE SELECTION BE:" 220 PRINT 230 PRINT " 1=LET 2=END 3=NAME 4=GET 5=RUN 6=DIM" 240 PRINT " 7=SAVE 8=C (WITH 'CTRL' KEY PRESSED) 9=READ" 250 PRINT " 10=DATA 11=LIST 12=PRINT 13=GO TO 14=BYE 15=KILL" 260 PRINT " 16=INPUT 17=LIB" 270 PRINT 280 PRINT "IN A MINUTE, WE'LL HAVE A FEW QUESTIONS ABOUT THESE TERMS SO" 290 PRINT "YOU CAN CHECK ON YOURSELF. BEFORE WE DO THAT, LOOK AT EACH ONE" 300 PRINT "AND SEE IF YOU CAN TELL WHAT IT IS FOR." 310 PRINT 320 PRINT "FOR INSTANCE, TAKE 'BYE'. YOU USE THIS ONE TO SIGN OFF WITH." 330 PRINT "OR HOW ABOUT 'NAME'? THIS IS THE ONE WE USE WHEN WE WANT TO" 340 PRINT "FORMULATE A PROGRAM NOT ALREADY IN THE COMPUTER'S MEMORY. THEN" 350 PRINT "THERE'S 'RUN' - THIS ONE IS USED TO BEGIN THE EXECUTION OF ANY" 360 PRINT "PROGRAM. HOW MANY OF THE OTHER 14 ARE YOU PRETTY SURE YOU KNOW." 370 INPUT Z 390 PRINT 400 PRINT "WELL, HERE'S YOUR CHANCE TO TEST YOURSELF. I AM GOING TO TYPE" 410 PRINT "OUT 10 QUESTIONS. ANSWER EACH ONE BY USING THE NUMBER OF THE" 420 PRINT "CHOICE YOU SELECT. AFTER YOU HAVE TRIED THEM ALL, WE'LL TAKE A" 430 PRINT "LOOK AT THE ANSWERS AND SEE HOW YOU DID. OK? HERE THEY ARE:" 440 PRINT 450 PRINT " 1. WHICH IS USED TO CALL A PROGRAM FROM THE LIBRARY"; 460 INPUT Z 470 IF Z <> 4 THEN 490 480 GOSUB 130 490 PRINT " 2. WHICH ONE MUST NEVER BE OMMITTED IN A COMPLETE PROGRAM"; 500 INPUT Y 510 IF Y <> 2 THEN 530 520 GOSUB 130 530 PRINT " 3. WHICH CAUSES THE COMPUTER TO ALTER NORMAL SEQUENCE"; 540 INPUT X 550 IF X <> 13 THEN 570 560 GOSUB 130 570 PRINT " 4. WHICH ELIMINATES A PROGRAM FROM MEMORY"; 580 INPUT W 590 IF W <> 15 THEN 610 600 GOSUB 130 610 PRINT " 5. WHICH CAUSES THE COMPUTER TO TYPE OUT YOUR PROGRAM"; 620 INPUT V 630 IF V <> 11 THEN 650 640 GOSUB 130 650 PRINT " 6. WHICH TELLS YOU WHAT PROGRAMS ARE IN THE LIBRARY"; 660 INPUT U 670 IF U <> 17 THEN 690 680 GOSUB 130 690 PRINT " 7. WHICH STOPS THE TELETYPE FOR DATA ENTRY"; 700 INPUT T 710 IF T <> 16 THEN 730 720 GOSUB 130 730 PRINT " 8. WHICH IS THE CORRECT ONE TO INTERRUPT THE MACHINE"; 740 INPUT S 750 IF S <> 8 THEN 770 760 GOSUB 130 770 PRINT " 9. WHICH IS USED TO SHOW AN EQUATION"; 780 INPUT R 790 IF R <> 1 THEN 810 800 GOSUB 130 810 PRINT " 10. WHICH IS NECESSARY BECAUSE OF SUBSCRIPTED VARIABLES"; 820 INPUT P 830 IF P <> 6 THEN 850 840 GOSUB 130 850 PRINT 855 IF C=10 THEN 1520 860 PRINT "YOU ANSWERED ";C;" CORRECTLY. LET'S CHECK YOUR ANSWERS:" 870 PRINT 880 PRINT "QUESTION SHOULD YOUR" 890 PRINT " NUMBER BE ANSWER" 900 PRINT 910 PRINT " 1 4 ";Z 920 PRINT " 2 2 ";Y 930 PRINT " 3 13 ";X 940 PRINT " 4 15 ";W 950 PRINT " 5 11 ";V 960 PRINT " 6 17 ";U 970 PRINT " 7 16 ";T 980 PRINT " 8 8 ";S 990 PRINT " 9 1 ";R 1000 PRINT " 10 6 ";P 1010 PRINT 1020 IF C>6 THEN 1150 1030 PRINT "YOUR SCORE IS ACTUALLY LESS THAN A PASSING SCORE (7 RIGHT). DO" 1040 PRINT "YOU THINK MAYBE YOU OUGHT TO GO BACK AND TRY A PREVIOUS LESSON" 1050 PRINT "AGAIN (0=NO, 1=YES)"; 1060 INPUT D 1065 PRINT 1070 IF D=1 THEN 1110 1080 IF D=0 THEN 1130 1090 PRINT "YOUR ANSWER DOESN'T MAKE SENSE. LET'S START OVER: ONCE AGAIN," 1100 GOTO 1030 1110 PRINT "GOOD IDEA. CALL FOR AN EARLIER LESSON AND I'LL HELP YOU WITH IT." 1120 STOP 1130 PRINT "WELL, IT'S UP TO YOU, OF COURSE. LET'S CONTINUE. BUT FIRST," 1140 GOTO 1190 1150 PRINT "RATE YOURSELF THIS WAY: 10 RIGHT - EXCELLENT, 9 RIGHT -GOOD," 1160 PRINT "8 RIGHT - FAIR, AND 7 RIGHT - PASSING." 1170 PRINT 1180 PRINT "WE'LL CONTINUE WITH OUR LESSON DIRECTLY. BUT BEFORE WE GO ON," 1190 PRINT "LET'S JUST QUICKLY CORRECT ANY QUESTION YOU MISSED. REMEMBER:" 1200 PRINT 1210 IF Z <> 4 THEN 1320 1220 IF Y <> 2 THEN 1340 1230 IF X <> 13 THEN 1360 1235 IF W <> 15 THEN 1380 1240 IF V <> 11 THEN 1400 1260 IF U <> 17 THEN 1420 1270 IF T <> 16 THEN 1440 1280 IF S <> 8 THEN 1460 1290 IF R <> 1 THEN 1480 1300 IF P <> 6 THEN 1500 1310 GOTO 1530 1320 PRINT "'GET' CALLS LIBRARY PROGRAMS." 1330 GOTO 1220 1340 PRINT "'END' MUST ALWAYS BE INCLUDED." 1350 GOTO 1230 1360 PRINT "'GO TO' CHANGES EXECUTION SEQUENCE." 1370 GOTO 1235 1380 PRINT "'BYE' SIGNS YOU OFF THE SYSTEM." 1390 GOTO 1240 1400 PRINT "'LIST' RESULTS IN YOUR PROGRAM BEING LOST." 1410 GOTO 1260 1420 PRINT "LIB' LISTS THE LIBRARY PROGRAMS." 1430 GOTO 1270 1440 PRINT "INPUT' STOPS THE TELETYPE FOR DATA ENTRIES." 1450 GOTO 1280 1460 PRINT "'C (WITH CTRL)' SHOULD BE USED TO INTERRUPT THE MACHINE." 1470 GOTO 1290 1480 PRINT "'LET' IS USED TO SHOW EQUATIONS." 1490 GOTO 1300 1500 PRINT "'DIM' MUST BE USED IF THERE ARE SUBSCRIPTED VARIABLES." 1510 GOTO 1530 1520 PRINT "GOOD FOR YOU - A PERFECT SCORE!" 1530 PRINT 1540 PRINT "OUR NEW OBJECTIVE WILL BE TO LEARN HOW TO GET THE COMPUTER TO" 1550 PRINT "DO THE SAME PROBLEM MANY TIMES WITH DIFFERENT DATA. ITERATIVE" 1560 PRINT "INSTRUCTION GROUPS ARE OFTEN REFERRED TO AS 'LOOPS'. IN THEIR" 1570 PRINT "SIMPLEST FORM, THEY CAUSE THE MACHINE TO DO THE PROBLEM OVER" 1580 PRINT "AND OVER, USING DIFFERENT NUMERICAL VALUES EACH TIME." 1590 PRINT 1600 PRINT "THIS LESSON IS CONTINUED IN THE PROGRAM 'TUT07' (TUT03" 1610 PRINT "GIVES DIRECTIONS FOR CALLING PROGRAMS). SO LET'S KEEP" 1620 PRINT "GOING." 1630 END