Compucolor.org – Virtual Media

Listing of file='LSNO9.BAS;01' on disk='vmedia/BASIC_lessons-sector.ccvf'

10 PLOT 27,1,255,14
20 REM  COMPUCOLOR BASIC LESSON 9
30 REM  ART GRUSENDORF
60 PLOT 6,35,12,3,15,12,6,24:PRINT " WELCOME TO COMPUCOLOR BASIC "
70 PLOT 3,24,18,6,24:PRINT " LESSON 9 "
80 FOR X= 1TO 1000:NEXT X:PLOT 6,3,12
100 PRINT :PRINT :PRINT "       GOOD TO SEE YOU BACK!"
105 PRINT
110 PRINT "LET'S GET BACK TO WRITING PROGRAMS............"
120 PRINT :PRINT "IT HAS BEEN NOTED THAT SQR MEANS FIND THE SQUARE ROOT. SUCH"
130 PRINT "AN OPERATION IS KNOWN AS A FUNCTION."
140 PRINT :PRINT "THERE ARE A NUMBER OF STANDARD (PREDEFINED) FUNCTIONS WITH A"
150 PRINT "SET MEANING.  SQR  IS ONE; LOG IS ANOTHER. THIS ONE REFERS TO"
160 PRINT "NUMBERS FOUND IN A TABLE OF LOGARITHMS. LOOK OVER THE FOLLOWING:"
170 PRINT :PRINT :INPUT "                PRESS 'RETURN'";G:PLOT 12:PRINT :PRINT
180 PRINT "  (1)    TAN    (2)    TRA    (3)    ADV    (4)    ABS"
190 PRINT
200 PRINT "  (5)    COS    (6)    PAC    (7)    MON    (8)    SIN"
210 PRINT :PRINT "FOUR OF THEM ARE STANDARD FUNCTIONS; FOUR ARE NOT. CAN YOU PICK"
220 PRINT "ONE OUT THAT IS? TYPE IN ITS NAME.  WHAT WOULD YOU SAY";
230 INPUT A$
240 IF A$= "TAN"OR A$= "ABS"OR A$= "COS"OR A$= "SIN"THEN 320
250 PRINT "YOU DIDN'T PICK ONE OF THEM THAT TIME. TRY ONCE MORE.  WHICH";:GOTO 230
320 PRINT "THIS IS ONE OF THEM. THREE ARE TRIGONOMETRIC FUNCTIONS: TAN"
330 PRINT "MEANS TANGENT, SIN MEANS SINE, AND COS MEANS COSINE."
340 PRINT "ONE ( ABS ) MEANS TO USE THE POSITIVE VALUE FOR WHATEVER IS"
350 PRINT "BEING CONSIDERED.  THIS IS THE ABSOLUTE VALUE -OFTEN REQUIRED."
360 PRINT :INPUT "          PRESS 'RETURN'";G:PLOT 12
365 PLOT 15
370 PRINT :PRINT "EACH FUNCTION IS FOLLOWED BY AN EXPRESSION IN PARENTHESES"
380 PRINT "KNOWN AS THE ARGUMENT; IT IS WHAT THE FUNCTION OPERATES ON."
390 PRINT "EXAMPLE:"
400 PRINT :PRINT "ABS(Y) MEANS Y IS TO BE MADE POSITIVE REGARDLESS OF SIGN, OR"
410 PRINT "ITS ABSOLUTE VALUE IS TO BE USED.  HERE Y IS THE ARGUMENT."
420 PRINT :PRINT :PRINT "6 STANDARD FUNCTIONS HAVE BEEN MENTIONED. THERE"
430 PRINT "ARE 4 OTHERS AVAILABLE TO THE USER. THEY ARE"
435 PLOT 14
440 PRINT :PRINT "  (1)  ATN(U)  (2)  EXP(U)  (3)  INT(U)  (4)  RND(U)"
445 PLOT 15
450 PRINT :PRINT "HERE THE U SIMPLY REPRESENTS THE ARGUMENT.  ONE OF THE ABOVE IS"
460 PRINT "FOR TAKING ONLY THE WHOLE NUMBER PART OF A DECIMAL NUMBER."
470 PRINT "WHICH DO YOU THINK THIS ONE MIGHT BE";:INPUT D$
480 IF D$= "INT(U)"THEN 510
490 PRINT "NO, IT'S INT(U) BECAUSE INT STANDS FOR INTEGER. WHICH DO"
500 GOTO 520
510 PRINT "THAT'S RIGHT!! - INT MEANS INTEGER. TRY ANOTHER: WHICH ONE DO"
520 PRINT "YOU SUPPOSE IS USED TO GENERATE NUMBERS AT RANDOM";:INPUT R$
530 IF R$= "RND(U)"THEN 560
540 PRINT "YOU NEED ANOTHER GUESS. LOOK AT THE COMBINATIONS AGAIN. WHICH DO":GOTO 520
560 PRINT "GOOD!! ALSO ATN MEANS ARCTANGENT, A TRIGONOMETRIC FUNCTION"
570 PRINT "AND EXP MEANS EXPONENTIAL, WHICH IS THE ANTILOG FUNCTION."
580 PRINT "IF YOU USE A TRIGONOMETRIC FUNCTION, PLEASE NOTE: THEY INVOLVE"
590 PRINT "RADIANS, NOT DEGREES. ALSO, THE TWO LOGARITHMIC FUNCTIONS ARE"
600 PRINT "BASED ON THE NATURAL LOGARITHMS - NOT COMMON LOGS."
610 INPUT "                               PRESS 'RETURN'";G
620 PLOT 12,14
650 PRINT "NOW FOR A REVIEW OF THE STANDARD FUNCTIONS."
670 PRINT "USE THIS FOR YOUR ANSWER SELECTION":PRINT
680 PRINT "  SIN     COS     TAN     ATN"
685 PRINT
690 PRINT "  EXP     ABS     LOG     SQR":PRINT
695 PLOT 15
700 INPUT "WHICH FUNCTION FINDS THE ABSOLUTE VALUE? ";A$
710 IF A$= "ABS"THEN 740
720 PRINT "NO..THE FUNCTION NAME IS AN ABBREVIATION OF WHAT IT DOES."
730 PRINT "TRY AGAIN...........":GOTO 700
740 PRINT "GOOD..THE NEXT GUESTION IS HARDER: WHAT FUNCTION DETERMINES THE"
750 INPUT "NATURAL LOGARITHN OF 'X'  ";B$
760 IF B$= "LOG"THEN 790
770 PRINT "NO..CHECK THE ABBREVIATION OF LOGARITHM AGAIN. WHICH FUNCTION"
780 PRINT "DETERMINES THE.......":GOTO 750
790 PRINT "VERY GOOD..THE NEXT ONE IS EASY: WHAT'S THE SINE FUNCTION"
800 INPUT C$
810 IF C$= "SIN"THEN 840
820 PRINT "TRY AGAIN, PLEASE. WHICH ONE....."
830 GOTO 800
835 PRINT "RIGHT";
840 PRINT " WHICH FUNCTION GIVES AN ANGLE WHOSE TANGENT IS 'X'";
850 INPUT D$
860 IF D$= "ATN"THEN 890
870 PRINT "IT'S TRICKY. TRY AGAIN: WHICH IS IT..";
880 GOTO 850
890 PRINT "EXCELLENT.. NOW FOR THE HARDEST: WHAT FUNCTION COMPUTES E^X";
900 INPUT E$
910 IF E$= "EXP"THEN 950
920 PRINT "WELL..IT'S HARD. HINT: WHAT IS THE EXPONENTIAL (POWER) OF 'E' "
930 GOTO 900
950 PRINT "TERRIFIC. THE REST ARE TRIVIAL, SO WE MIGHT AS WELL MOVE ON."
960 PRINT "CONGRATULATIONS FOR A PERFECT SCORE!!!"
980 INPUT "                               PRESS 'RETURN'";G
990 PLOT 12,14
1000 PRINT " HERE ARE SOME RESTRICTIONS WHICH APPLY TO CERTAIN FUNCTIONS:"
1010 PRINT "THE ARGUMENT OF THE SIN, COS, AND TAN FUNCTIONS MUST BE IN"
1020 PRINT "RADIAN MEASURE. THE ARCTANGENT (ATN) GIVES AN ANGLE IN RADIANS"
1030 PRINT :PRINT "THE LOGARITHM OF A NEGATIVE NUMBER IS NOT DEFINED. SO IF THE"
1040 PRINT "ARGUMENT IS NEGATIVE, AN ERROR MESSAGE WILL APPEAR";
1050 PRINT " (CF ERROR)"
1060 PRINT "AT THIS POINT THE PROGRAM WILL HALT.  IF SQR HAS A NEGATIVE"
1070 PRINT "ARGUMENT, THEN THE CF ERROR MESSAGE WILL APPEAR ALSO. AND THE"
1080 PRINT "THE PROGRAM WILL HALT.  THE ARGUMENT OF A FUNCTION MAY BE"
1090 PRINT "ANY EXPRESSION, AS LONG AS IT HAS A NUMERICAL VALUE."
1100 PRINT :PRINT "LET'S MAKE A TABLE OF X AND SIN (X) FOR 0<=X<=360 DEGREES"
1110 PRINT "IN STEPS OF 60 DEGREES.  HERE'S A PROGRAM WHICH WILL DO IT"
1115 PRINT :PRINT
1120 INPUT "                             PRESS 'RETURN'";G
1130 PLOT 12
1140 PRINT :PRINT
1150 PRINT "     10 X=3.14159/180            (DEGREES TO RADIANS)":PRINT
1160 PRINT "     20 FOR I=0 TO 360 STEP 60   (START OF LOOP)":PRINT
1170 PRINT "     30 PRINT I, SIN (X * I)     (OUTPUT STATEMENT)":PRINT
1180 PRINT "     40 NEXT I                   (END OF LOOP)":PRINT
1190 PRINT "     50 END                      (LAST STATEMENT)":PRINT
1200 PRINT "IF YOU WOULD LIKE TO HAVE THIS PROGRAM RUN, TYPE 1. IF NOT,"
1210 PRINT "TYPE ANY OTHER NUMBER.  WOULD YOU........";
1220 INPUT B
1225 PLOT 12:PRINT
1230 IF B< > 1THEN 1300
1240 X= 3.14159/ 180
1250 FOR I= 1TO 360STEP 60
1260 PRINT I,SIN (X* I)
1270 NEXT I
1280 PRINT
1290 PRINT "COLUMN HEADINGS WOULD IMPROVE THE APPEARANCE OF THE OUTPUT."
1300 PRINT "THERE ARE TWO OTHER FUNCTIONS WE SPOKE OF EARLIER. INT EXTRACTS"
1310 PRINT "THE WHOLE NUMBER PART OF ANY NUMBER.  IF N=27.68 THEN WHEN"
1320 PRINT "THE STATEMENT PRINT INT(X) IS USED, THE VALUE DISPLAYED IS"
1330 PRINT "27.  THE OTHER STANDARD FUNCTION IS RND(X) WHICH GENERATES A"
1340 PRINT "NUMBER (NOT SPECIFIED) BETWEEN 0 AND 1. THE ARGUMENT IS A "
1350 PRINT "SEED (INITALIZATION) NUMBER."
1360 PLOT 15:INPUT "                              PRESS 'RETURN'";G
1370 PLOT 12,14
1380 PRINT "I'LL REMIND YOU OF A PROGRAM ON STANDARD FUNCTIONS LATER. NOW"
1390 PRINT "TO PROCEED TO LESSON 10 TO CONSIDER"
1400 PRINT :PRINT :PRINT TAB( 15)"USER DEFINED FUNCTIONS"
1410 PRINT TAB( 16)"GOSUB ROUTINES AND"
1420 PRINT TAB( 16)"THE REMARK STATEMENT."
1430 PRINT "TO REVIEW TYPE 1 AND PRESS 'RETURN', TO STOP TYPE 2 AND PRESS"
1440 INPUT "'RETURN', TO GO ON TO LESSON 10 PRESS 'RETURN'";J:IF J= OTHEN LOAD "LSN10":RUN
1450 IF J= 1THEN RUN
1460 END