10  REM ***  HP TIME-SHARED BASIC PROGRAM LIBRARY  *********************
11  REM
12  REM         TUT11:  TUTOR SERIES BASIC LANGUAGE PROGRAMMING COURSE,
13  REM                 (PART 11 OF 25)
14  REM         36139 (A810) REV A -- 7/71
15  REM
16  REM ***  CONTRIBUTED PROGRAM  **************************************
17  REM
120  PRINT "WHAT IS YOUR FIRST CHOICE";
130  INPUT C
140  PRINT 
150  IF C=1 THEN 210
160  IF C=2 THEN 920
170  IF C=3 THEN 5000
180  IF C=10652 THEN 530
185  IF C=27429 THEN 1300
190  PRINT "YOU AREN'T PLAYING FAIR, BETTER YOU STAPT OVER: TYPE 'RUN'."
200  STOP 
210  PRINT "HERE WE GO. PICK ONE OF THE TRIGONOMETRIC FUNCTIONS: SINE,"
220  PRINT "COSINE, OR TANGENT, IN THE SPACE BELOW, WRITE A PROGRAM WHICH"
230  PRINT "WILL GIVE THE FOLLOWING OUTPUT:"
240  PRINT 
250  PRINT "     'THE VALUE OF THE (FILL IN FUNCTION NAME) FOR (FILL"
260  PRINT "      IN ANGLE VALUE) DEGREES IS (FILL IN FUNCTION VALUE)'"
270  PRINT 
280  PRINT "DO IT FOR 8 SEQUENTIAL ANGLE VALUES, WRITE YOUR PROGRAM HERE:"
290  FOR I=1 TO 20
300  PRINT 
310  NEXT I
320  PRINT "WHEN YOU'RE DONE, TYPE '1' AND WE'LL CONTINUE -"
330  PRINT 
340  PRINT "             ARE"
350  PRINT 
360  PRINT "             YOU"
370  PRINT 
380  PRINT "             DONE"
390  PRINT 
400  PRINT "             YET"
410  PRINT 
420  PRINT "             ";
430  INPUT J
440  PRINT 
450  IF J=1 THEN 480
460  PRINT "OK - KEEP WORKING ON IT, DONE YET";
470  GOTO 430
480  PRINT "NOW , WHEN I STOP, 'SCRATCH', ENTER YOUR PROGRAM AND TRY RUNNING"
490  PRINT "IT.  WHEN YOU ARE DONE, CALL 'TUT11' AGAIN.  THIS TIME TYPE 10652"
500  PRINT "IN ANSWER TO MY FIRST QUESTION."
520  STOP 
530  PRINT "AND YOU'VE WRITTEN A PROGRAM? GOOD, NOW FOR THE $63.95 QUESTION:"
540  PRINT "(1=YES, OTHER NUMBERS=NO) DID IT WORK????";
550  INPUT W
560  PRINT 
570  IF W <> 1 THEN 600
580  PRINT "THIS MAKES YOU A TRIGONOMETRIST, SO CALL IN 'TUT12', OR"
585  PRINT "IF YOU'VE BEEN THROUGH THAT ONE CALL IN 'TUT13'. OK."
590  STOP 
600  PRINT "WELL HERE'S ONE THAT WILL. TYPE THE NUMBER OF THE CHOICE HERE:"
610  PRINT "DID YOU USE (1) SINE, (2) COSINE, OR (3) TANGENT";
620  INPUT P
630  PRINT 
640  IF P=1 THEN 680
650  IF P=2 THEN 680
660  IF P=3 THEN 680
670  GOTO 610
680  PRINT "AND WHAT ANGLE DID YOU START WITH? HOW MANY DEGREES";
690  INPUT N
700  PRINT 
710  PRINT "HOW ABOUT THE INCREMENT? NUMBER OF DEGREES";
720  INPUT M
730  PRINT 
740  PRINT "O.K. - HERE YOU ARE - CALL THE ANGLE 'A':"
750  PRINT 
760  PRINT "     100   FOR A = ";N;"TO ";N+M*7;"STEP ";M
770  IF P=3 THEN 860
780  IF P=2 THEN 890
790  PRINT "     110   PRINT ''THE VALUE OF THE SINE OF'';"
800  PRINT "     120   PRINT A;''DEGREES IS'';SIN(A*3.14159/180)"
810  PRINT "     130   NEXT A"
820  PRINT "     140   END"
830  PRINT 
840  PRINT "TRY IT OUT; YOU SHOULD BE SUCCESSFUL. THEN CALL IN 'TUT12'."
845  PRINT "OR, IF YOU'VE BEEN THRU THAT ONE, CALL 'TUT13'. OK?"
850  STOP 
860  PRINT "     110   PRINT ''THE VALUE OF THE TANGENT OF'';"
870  PRINT "     120   PRINT A;''DEGREES IS'';TAN(A*3.14159/180)"
880  GOTO 810
890  PRINT "     110   PRINT ''THE VALUE OF THE COSINE OF'';"
900  PRINT "     120   PRINT A;''DEGREES IS'';COS(A*3.14159/180)"
910  GOTO 810
920  PRINT "THE FOLLOWING PROGRAM WILL PRINT OUT A TABLE OF LOGS"
930  PRINT "FROM LOG(2.0) THRU LOG(8.8) IN INCREMENTS OF 0.2. HOWEVER,"
940  PRINT "IT IS IN THE WRONG ORDER.  (REMEMBER, THESE ARE NATURAL LOGARITHMS)"
950  PRINT 
980  PRINT "  200  LET N(J)=LOG(I+(J-1)/10)"
990  PRINT 
1000  PRINT "   300 NEXT I"
1010  PRINT 
1020  PRINT "   400 PRINT"
1030  PRINT 
1040  PRINT "   500 FOR I=2 TO 8"
1050  PRINT 
1060  PRINT "   600 END"
1070  PRINT 
1080  PRINT "   700  PRINT ""I;N(1);N(3);N(5);N(7);N(9)"
1090  PRINT 
1100  PRINT "   800 FOR J=1 TO 9 STEP 2"
1110  PRINT 
1120  PRINT "   900 NEXT J"
1130  PRINT 
1140  PRINT "  1000 PRINT ''     .0       .2        .4        .6        .8 ''"
1160  PRINT "   NOW, WHEN I STOP, YOU DO THE FOLLOWING:"
1170  PRINT 
1180  PRINT "   REARRANGE THE PROGRAM IN PROPER SEQUENCE,"
1190  PRINT 
1240  PRINT "  'SCRATCH', TYPE OUT THE PROGRAM, THEN TYPE 'RUN'."
1250  PRINT 
1260  PRINT "   WHEN RUN IS COMPLETED, CALL IN 'TUT11' AGAIN."
1270  PRINT 
1280  PRINT "   ANSWER MY FIRST QUESTION BY TYPING IN 27429."
1290  STOP 
1300  PRINT "DID THE PROGRAM RUN PROPERLY (0=NO, OTHER NUMBERS=YES) ";
1310  INPUT Z
1320  IF Z=0 THEN 1360
1330  PRINT "THEN I GUESS YOU'RE A LOGARITHMIAN - PROCEED WITH YOUR LESSON"
1340  PRINT "BY CALLING IN 'TUT12' (IF YOU'RE THRU WITH THAT ONE,"
1350  PRINT "CALL IN 'TUT13' ) FROM THE LIBRARY. YOU'RE DOING FINE."
1355  STOP 
1360  PRINT "WELL, HERE'S A SEQUENCE THAT WILL WORK FOR YOU:"
1370  PRINT 
1380  FOR A=200 TO 900 STEP 100
1390  READ B
1400  PRINT "    CHANGE  ";A;" TO  ";B
1410  NEXT A
1420  PRINT "    CHANGE  1000   TO   110"
1430  DATA 150,180,120,130,190,170,140,160,110
1440  PRINT 
1450  PRINT "TRY IT - AND WATCH IT WORK. THEN, CALL IN 'TUT12' (OR IF"
1455  PRINT "YOU'VE BEEN THRU THAT, CALL 'TUT13') FROM THE LIBRARY."
1470  STOP 
5000  PRINT "TRY THIS ONE: WHAT IS ABS(SQR(15-6*INT(1.8742)))";
5010  INPUT E
5020  PRINT 
5030  IF E=3 THEN 5100
5040  PRINT "NO. INT(1.8742)=1 (INTEGER PART), SO 6*INT(1.8742)=6*1,OR 6."
5050  PRINT "THEN, SQR(15-6) = +3 OR -3, AND ABS(+3) OR ABS(-3) ARE BOTH 3."
5100  PRINT "HOW ABOUT: INT (5-ABS(SQR(1.84+ABS(1-X)))) WHEN X=4";
5110  INPUT G
5130  IF G=2 THEN 5200
5140  PRINT "CAN'T BE. NOTICE: ABS(1-X)=ABS(-3) OR 3, AND SQR(1.84+3)"
5150  PRINT "IS +2.2 OR -2.2. NOW, ABS(+2.2) AND ABS(-2.2) ARE BOTH 2.2, AND"
5160  PRINT "INT(5-2.2), OR INT(2.8), IS 2 (TRUNCATE) - THE ANSWER."
5170  GOTO 5220
5200  IF E <> 3 THEN 5220
5210  PRINT "YOU HAD THEM BOTH RIGHT, SO I'LL PRONOUNCE YOU A FUNCTIONEER."
5220  PRINT "LET'S GO ON WITH OUR LESSON. CALL IN 'TUT12' OR, IF YOU'VE"
5230  PRINT "COMPLETED THAT ONE, CALL IN 'TUT13'."
5240  END 
