10  REM ***  HP TIME-SHARED BASIC PROGRAM LIBRARY  *********************
11  REM
12  REM         TUT09:  TUTOR SERIES BASIC LANGUAGE PROGRAMMING COURSE,
13  REM                 (PART 9 OF 25)
14  REM         36139 (A810) REV A -- 7/71
15  REM
16  REM ***  CONTRIBUTED PROGRAM  **************************************
17  REM
100  PRINT "WELCOME TO LESSON 9.  WE BRIEFLY INVESTIGATED THE TAPE UNIT LAST"
110  PRINT "LESSON.  HAVE YOU TRIED USING TAPE (0=NO, 1=YES) ";
120  INPUT Q
130  PRINT 
140  IF Q=0 THEN 190
150  IF Q=1 THEN 280
160  PRINT "YOU WEREN'T PAYING "'1"T"'1"NTION - YOU HAVE TO TYPE '0' OR '1' - SO:"
170  PRINT "HAVE YOU HAD THE CHANCE YET ";
180  GOTO 120
190  PRINT "WELL, THAT SHOULD BE NEXT.  DID YOU UNDERSTAND THE EXPLANATION"
200  PRINT "IN LESSON 8?  I HOPE SO, BUT ACTUALLY TRYING IT SHOULD HELP YOU."
210  PRINT "WOULD YOU LIKE TO TRY A SHORT TAPE NOW (0=NO, 1=YES) ";
220  INPUT R
230  PRINT 
240  IF R=0 THEN 400
250  IF R=1 THEN 1130
260  PRINT "YOU CAN'T ANSWER A 'YES OR NO' QUESTION THAT WAY, ONCE MORE -"
270  GOTO 210
280  PRINT " AND WERE YOU SUCCESSFUL?  (0=NO,1=YES)";
290  INPUT B
300  PRINT 
310  IF B=0 THEN 350
320  IF B=1 THEN 380
330  PRINT "????????..PLEASE TYPE '0' FOR 'NO' OR '1' FOR 'YES'..WHICH";
340  GOTO 290
350  PRINT "IT MAY TAKE SOME PRACTICE BEFORE YOU GE"'20" PROFICIENT AT IT. YOU"
360  PRINT "PROBABLY SHOULD TRY AGAIN WHILE IT'S STILL FRESH IN YOUR MIND."
370  GOTO 210
380  PRINT "THAT'S THE WAY TO DO IT, NOW I'D SAY IT WAS TIME WE WENT BACK"
390  GOTO 410
400  PRINT "0.K. THEN - WE'LL FORGET ABOUT THE TAPE FOR AWHILE AND GO BACK"
410  PRINT "TO WRITING PROGRAMS. WE SAW THAT 'SQR' ALWAYS MEANS 'FIND THE"
420  PRINT "SQUARE ROOT'. WE REFER TO SUCH AN OPERATION AS A 'FUNCTION'."
430  PRINT 
440  PRINT "THERE ARE MANY 'STANDARD' OR PREDEFINED FUNCTIONS, WHICH HAVE A"
450  PRINT "SET MEANING. 'SQR' IS ONE; 'LOG' IS ANOTHER. THIS ONE REFERS TO"
460  PRINT "NUMBERS FOUND IN A TABLE OF LOGARITHMS. LOOK OVER THE FOLLOWING:"
470  PRINT 
480  PRINT "     (1) TAN     (2) TRA     (3) ADV     (4) ABS"
490  PRINT 
500  PRINT "     (5) COS     (6) PAC     (7) MON     (8) SIN"
510  PRINT 
520  PRINT "FOUR OF THEM ARE STANDARD FUNCTIONS; FOUR ARE NOT. CAN YOU PICK"
530  PRINT "ONE OUT THAT IS? TYPE IN ITS NUMBER ONLY. WHAT WOULD YOU SAY";
540  INPUT A
550  PRINT 
560  IF A=1 THEN 620
570  IF A=4 THEN 620
580  IF A=5 THEN 620
590  IF A=8 THEN 620
600  PRINT "YOU DIDN'T PICK ONE OF THEM THAT TIME. TRY ONCE MORE. WHICH"
610  GOTO 540
620  PRINT "THIS IS ONE OF THEM. THREE ARE TRIGONOMETRIC FUNCTIONS: 'TAN'"
630  PRINT "MEANS 'TANGENT', 'SIN' MEANS 'SINE', AND 'COS' MEANS 'COSINE'."
640  PRINT "ONE ('ABS') MEANS TO USE THE POSITIVE VALUE FOR WHATEVER IS"
650  PRINT "BEING CONSIDERED. THIS IS THE 'ABSOLUTE VALUE' - OFTEN REQUIRED."
660  PRINT 
670  PRINT "EACH FUNCTION IS FOLLOWED BY AN EXPRESSION IN PARENTHESES, KNOWN"
680  PRINT "AS THE 'ARGUMENT'; IT IS WHAT THE FUNCTION OPERATES ON. EXAMPLE:"
690  PRINT "'ABS(Y)' MEANS 'Y' IS TO BE MADE POSITIVE REGARDLESS OF SIGN, OR"
700  PRINT "ITS 'ABSOLUTE VALUE' IS TO BE USED. HERE 'Y' IS THE ARGUMENT."
710  PRINT 
720  PRINT "HERE ARE SOME OF THE OTHER AVAILABLE FUNCTIONS:"
740  PRINT 
750  PRINT " (1) ATN(U)   (2) EXP(U)   (3) INT(U)   (4)  RND(U) "
760  PRINT 
770  PRINT "HERE THE 'U' SIMPLY REPRESENTS THE ARGUMENT. ONE OF THE ABOVE IS"
780  PRINT "FOR TAKING ONLY THE WHOLE NUMBER PART OF A DECIMAL NUMBER. WHICH"
790  PRINT "DO YOU THINK THIS ONE MIGHT BE (TYPE NUMBER) ";
800  INPUT W
810  PRINT 
820  IF W=3 THEN 850
830  PRINT "NO, IT'S 'INT(U)' BECAUSE 'INT' STANDS FOR 'INTEGER'. WHICH DO"
840  GOTO 860
850  PRINT "THAT'S RIGHT - 'INT' MEANS 'INTEGER'. TRY ANOTHER: WHICH ONE DO"
860  PRINT "YOU SUPPOSE IS USED TO GENERATE NUMBERS AT RANDOM";
870  INPUT R
880  PRINT 
890  IF R=4 THEN 920
900  PRINT "YOU NEED ANOTHER GUESS. LOOK AT THE LETTER COMBINATIONS. TRY..";
910  GOTO 870
920  PRINT "GOOD. ALSO, 'ATN' MEANS 'ARCTANGENT', A TRIGONOMETRIC FUNCTION,"
930  PRINT "AND 'EXP' MEANS 'EXPONENTIAL', WHICH IS THE ANTILOG FUNCTION."
940  PRINT "IF YOU USE A TRIGONOMETRIC FUNCTION, PLEASE NOTE: THEY INVOLVE"
950  PRINT "RADIANS, NOT DEGREES."
970  PRINT 
980  PRINT "TYPE CHOICE NUMBER: WOULD YOU LIKE PRACTICE USING: (1) A 'TRIG'"
990  PRINT "FUNCTION? (2) A 'LOG' FUNCTION? (3) ANOTHER STANDARD FUNCTION?"
992  PRINT "OR (4) NO STANDARD FUNCTION? WHAT'S YOUR PREFERENCE";
994  INPUT Z1
996  IF Z1=1 THEN 1010
997  IF Z1=2 THEN 1010
998  IF Z1=3 THEN 1010
999  IF Z1=4 THEN 1020
1000  PRINT 
1003  PRINT "I DO NOT UNDERSTAND YOUR CHOICE. PLEASE RETYPE.";
1004  GOTO 994
1010  PRINT 
1014  PRINT "GOOD. CALL IN 'TUT11' AND TYPE"Z1"AS YOUR FIRST CHOICE"
1015  STOP 
1020  PRINT "GOOD. CALL IN 'TUT12' AND PROCEED."
1025  STOP 
1130  PRINT "THAT'S FINE. WE'LL USE THE PROGRAM CALLED 'TUT10'FOR THIS"
1132  PRINT "PURPOSE. CALL IT IN FROM THE LIBRARY, AND AFTER YOU HAVE TYPED"
1134  PRINT "'RUN' I'LL GIVE YOU SPECIFIC STEP-BY-STEP DIRECTIONS ON HOW TO"
1136  PRINT "PROCEED. AFTER YOU HAVE HAD A CHANCE TO TRY IT, WE CAN DISCUSS"
1138  PRINT "THE RESULTS IN THIS PROGRAM WHEN YOU CALL IT BACK IN. SO..."
1140  PRINT "DO A TAPE WITH 'TUT10', AND I'LL BE WAITING FOR YOU."
1142  STOP 
9999  END 
