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