' +JJJJ ?\>m0M='+l> /+l   d']6@5L&]655]6LF%5 & "L}"BB5L&]6 X  `6 77777777777JJJJx 77L? L7877777777 776i 7 7867 7`77 777777`x =(`(8`5775I7`B` 76`77`>J><;VU<)?<`8'x0|<&HhHh 8 8 8 8V&` aI꽌ɪVɭ&Y:&<&Y:&;: 꽌ɪ\8`&&꽌ɪɖ'*&%&,E'зЮ꽌ɪФ`+*xS&x'8*3Ixix&& 8 9: :' 9: :& :x)*++`FG8`0($ p,&"ųųೳŪŪųųij  !"#$%&'()*+,-./0123456789:;<=>?8  1 '" *"( (9"1 ( ,.(0# 2  /#0/#0 *?'#07#000'#07#0:"4<*55**5*%5)1)1)1)'#0/#0*5*75**5*:5/#0/#0'#07#0:::*::'#07#0"):$(%"%:$(%"%$$2%4%$$2%4%$(2()!)E(!8b $!H(+ "@H !D)"E` @ $ C ` DQ &J80^݌Hh < <݌ < < h < < < <`HJ>݌h Hh݌`葠葠ȔЖȔЖȠHIHHHHhHH݌hHhHh݌H6 (G FG HZXj 80x D9$xxH` >( Z>h Z>L=.xxH >hh@(LH>9L>HH/Hh/ H?-З( 8(& 8$8 H` *8HNx`* >x$50x*$50xL9JJJJ`HHjf5 >h $50x`HA>VD;;P >(ED Z> ?$0x8x D9- 8DD# H8`?E Vˆʎ55L $ 5 55555 &a*5`*5` "L&5_*b*JL%u**Lz%`** $  Q(lXJ̥KlV $  Q(lV eօ3L e3L &%R*L &%Q*L d' "L4% N'e*)n*5 5 &`@-e*f*f* 5 "L# "5f*`L %.* *t*Q*L$ %L&*L` "O**P**u** d' "L% N'e*)n*o*o*n* &8ɍ` ^&f\*555L& ^&NR* & "R*ΩL&)\*Z* ʽ LH*v 3h`0h8` " ['L & N'С55 &5`*A*@` +5L^6L65`  \* ?*0 '\* '  Q( ^&\*lZl^?*c*q)H c*h`f*5h*5j*555@O*AP*`u*@`@5&`Q*R*`E 'Ls' ' ' @DAE@u*`8` %@ @A@`@`**@*A`M5 ) "L&`8@AW*c*@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@c*h8&ȑ@Hȑ@Ah@L'Hȑ@ȑ@* htphso`hMhL`9V*8U*897T*6S*67`INILOASAVRUCHAIDELETLOCUNLOCCLOSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIF!pppp p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF DATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx- (   Ϡ734@~3!+,W,o,*--,,9,-.-~3~3,,,,~3~3,,,,~3_*3 j.5 *H*H`Lc3 (+L3 +55555 1^3_* )3J Q*L_3Ls3443 D23455545554 70 / 7 :/354545455454555535L^/5-5I5555 55` / 4/ 2-5! / 08555454 70L3 (+50+5B5C3 2 70L35 *H*H`Lg3L{3505 *H*H` 3 ,5L3 3 1 ,H 1hBL, 0 BH [1 1h`Lo3 35 ,L3 3 1B , 1L,H 0hB@ 55 [1L133 (+34) 34 70L3 3L3 (+ 055L- (+34L{33454445 70 ^/* / 3B0 HȱBh -355 -8 /L38 25` +5 /3 /. /. 3 E7D B. /. /. 0]34S0J4 4) 3 4D4E B. 4  /. 02L3 Ν3 3`HD٤33DEEhiHLG.h ` /5B5-` /5B-` + X05I33383 33DH /4 E03744Ȍ7 X040 7 J7L35B5C`,5p` / R0-55`50` K/ R0-55`575755` 4/ K/ /( 55L/BȱBL/58` D2BH5BH :/ 75Bȭ5Bhh55 R0B5m55ȱB5m55` /LR0557755`*7*75LR0 E0(33 48`433 R0` E033LR0*7*7`777 555I7575757577** 7757`7 L35555f /55555555 ^/`855 i /B58` 41L 15ȱB5 /5555 /5`3 D23ȑB55B5 / 7 55`5555555555 5555`555`55BC55`5555`L3 /5B5C355 0Q340"B4 3` 02۰Ϭ33B438`3i#`3ЗLw35!50>5555`53 /3m3 3 3733i35 3583 /35ЉLw35`H /5h 25L/~43 533`55555555J5m55m5jn5n5n5ۭ55m5555m55m55`"L? 585H ~.(3` # d ֠z# u*`220:" ]":16:" NOW TYPE 'SAVE NEW TEST' AFTER THE":" PROMPT CHARACTER."~&\8:868:" ]";A$:A$"SAVE NEW TEST"2140&f16151,0:I11500::16152,0:I1400::10:958:(7);" FILE TYPE MISMATCH":16j'p" YOU WILL GET AN ERROR MESSAGE I" *A 032 HELLO":I1200::" *I 021 PROGRAM-1":16152,0:I1200::" *B 011 PICTURE":I1200::" T 004 NEW TEST"%HI1200::" A 015 ";KK$:I1500::34,7:18:" WHEN A PROGRAM IS SAVED, ITS NAME":" APPEARS IN THE CATALOG.":2830M&R"SAVE"2050^$ JJ$(A$,5):2740:FF1Ģ16:958:16151,0:I13000::16152,0:I1400:k$FF2050$ " NOW TYPE 'CATALOG' AFTER THE PROMPT":" CHARACTER."$*9:868:" ]";B$:B$"CATALOG"2090$4958:255:16151,0:I1999:{%>11:T"#220:8:" ]"m#16:" THIS IS A SIMULATION OF WHAT HAPPENS":" WHEN YOU USE THE 'SAVE' COMMAND."#:" TYPE 'SAVE' FOLLOWED BY ANY VALID":" NAME YOU CHOOSE. DO NOT USE A NAME":" ALREADY IN THE CATALOG." $8:868:" ]";A$:(A$,4) THE NAME (PROGRAMNAME)."":" IF THERE IS ALREADY A PROGRAM OF THAT NAME ON THE DISKETTE, IT WILL BE RE- PLACED BY THE NEW ONE.""2610:2830"" ]CATALOG":#" *A 032 HELLO":" *I 021 PROGRAM-1":" *B 011 PICTURE":" T 004 NEW TESROGRAMNAME)":8:"]RUN"!12:" FOR EXAMPLE,"::8:"]RUN HELLO"::" WILL LOAD THE PROGRAM NAMED 'HELLO'":" FROM THE DISKETTE AND RUN IT."!2830:1110!4:"SAVE (PROGRAMNAME)"::"" STORES THE PROGRAM IN MEMORY ONTO THE DISKETTE UNDERC b" USING RUN ## SOMETIMES CAUSES":" UNEXPECTED PROBLEMS."T l255::2830^ v1110 4:"RUN (PROGRAMNAME)":::" LOADS THE PROGRAM OFF THE DISKETTE":" AND RUNS IT FROM THE BEGINNING."!" THIS IS THE SAME AS SAYING:"::8:"]LOAD (PM IN MEMORY":" STARTING AT THE BEGINNING."AD34,5:220:2830N:" RUN ## EXECUTES THE PROGRAM IN":" MEMORY STARTING AT LINE NUMBER ##." X11:" FOR EXAMPLE,"::8:"]RUN 25"::" WILL RUN THE PROGRAM IN MEMORY":" BEGINNING AT LINE 25.":EMORY."1830:1110y5:"NEW":::" TELLS THE COMPUTER TO CLEAR ITS MEMORYTO MAKE ROOM FOR A NEW PROGRAM. USE""COMMAND WHEN YOU WANT TO WRITE A NEW PROGRAM.":2830:1110&283001110,:4:"RUN":::" RUN EXECUTES THE PROGRASEARCHES THE DISKETTE FOR A PROGRAM NAMED (PROGRAMNAME) AND, IF FOUND, LOADSIT INTO MEMORY.":" THIS WILL ERASE ANY PROGRAM ALREADY IN MEMORY.":" FOR EXAMPLE,"::" ]LOAD PROGRAM-1"::"WILL LOAD THE PROGRAM NAMED 'PROGRAM-1' INTO MT FROM LINE NUMBER ## TO THE END OF THE PROGRAM.":"NOTE: A COMMA MAY BE USED INSTEAD OF A DASH IN ANY LIST COMMAND (THAT IS, TYPING 'LIST 100,200' AND 'LIST 100-200'WILL DO THE SAME THING.":2830:11104:"LOAD (PROGRAMNAME)":4^" PRINT OUT THE STATEMENT WHOSE LINE NUMBER IS ##.":" LIST ##-### WILL LIST EVERYTHING FROMLINE NUMBER ## THROUGH LINE NUMBER ###.":" LIST -## WILL LIST FROM THE BEGINNINGOF THE PROGRAM THROUGH LINE NUMBER ##."2:" LIST ##- WILL LIS TO THE END OF THE PROGRAM."p:" FOR EXAMPLE, 'LIST 50-' WILL LIST FROMLINE NUMBER 50 TO THE END."::2830255:" SUMMARY OF THE LIST COMMAND:":3" LIST WILL PRODUCE A LISTING OF THE ENTIRE PROGRAM IN MEMORY."2:" LIST ## WILL0mr" LIST-## WILL LIST FROM THE BEGINNING OF THE PROGRAM TRHOUGH LINE NUMBER ##."|:" FOR EXAMPLE, 'LIST-90' WILL LIST FROM THE FIRST STATEMENT THROUGH LINE 90.":2830"LIST ##- WILL LIST FROM LINE NUMBER ## ENT WITH LINE NUMBER 20.":2830^"LIST ##-### WILL LIST EVERYTHING FROM LINE NUMBER ## THROUGH LINE NUMBER ###."h:" FOR EXAMPLE, 'LIST 100-200' WILL LIST ALL THE STATEMENTS FROM LINE NUMBER 100 TO LINE NUMBER 200.":2831110,4:"LIST":34,3p64:"LIST WILL PRODUCE A LISTING OF THE ENTIRE PROGRAM IN MEMORY.":2830y@220J"LIST ## WILL PRINT OUT THE STATEMENT WHOSE LINE NUMBER IS ##."T:" FOR EXAMPLE, 'LIST 20' WILL LIST THE STATEMDATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx- ( ϠSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIF!pppp p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF @`jj@jA`Mu ) bLf`8]@]AWjcj@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@cjh8&ȑ@Hȑ@Ah@LgHȑ@ȑ@j htphso`hMhL`9]Vj8Uj]8]97]Tj6Sj]6]7`INILOASAVRUCHAIDELETLOCUNLOCCLO dg@uu`  \j j0 g\j g _ Qh ^f\jlZ]l^]?jcjqiH _cjh`fjuhjujju]u]u@OjAPj`uj@`@u&`QjRj`E gLsg g g @DAE@uj`8`]] %@ @A@`1,0:I1999:2 11:" A 032 HELLO":I1200::" *I 021 PROGRAM-1":16152,0:I1200::" *B 011 PICTURE":I1200::" T 004 NEW TEST"3 18:I1999::" A '*' IN THE CATALOG INDICATES THAT":" A PROGRAM IS LOCKED. THE PROGRAM":" NAMED AFTER THE PROMPT":" CHARACTER."R1 8:868:" ]";A$:A$"UNLOCK HELLO"2520\1 9581 16151,0:I11500::16152,01 I1400::18:" NOW TYPE 'CATALOG' AND PRESS 'RETURN'."1 9:868:" ]";A$:A$"CATALOG"25602 958:255:1615AS NO EFFECT.":2830y0 " ]CATALOG"::" *A 032 HELLO":" *I 021 PROGRAM-1":" *B 011 PICTURE":" T 004 NEW TEST"0 220:8:" ]""1 18:" THIS IS A SIMULATION OF WHAT HAPPENS":" WHEN YOU USE THE 'UNLOCK' COMMAND."::" TYPE 'UNLOCK HELLO'OCKED."/ 2830:1110:/ 4:"UNLOCK (PROGRAMNAME)"::/ " UNLOCKS THE PROGRAM NAMED":"(PROGRAMNAME), WHICH HAS BEEN PREVIOUSLYLOCKED. THE PROGRAM CAN NOW BE DELETED OR CHANGED AND SAVED."0 :" IF THE PROGRAM IS NOT LOCKED, THIS COMMAND HLOG"2410-.t 958:255:16151,0:I1999:.~ 11:" *A 032 HELLO":I1200::" *I 021 PROGRAM-1":16152,0:I1200::" *B 011 PICTURE":I1200::" T 004 NEW TEST"/ 18:I1999::" A '*' IN THE CATALOG INDICATES THAT":" A PROGRAM IS LCOMMAND."::" TYPE 'LOCK HELLO' AFTER THE PROMPT":" CHARACTER."q-B 8:868:" ]";A$:A$"LOCK HELLO"2370{-L 958-V 16151,0:I11500::16152,0-` I1400::18:" NOW TYPE 'CATALOG' AND PRESS 'RETURN'." .j 9:868:" ]";A$:A$"CATAHANGES BY THE 'SAVE' OR 'DELETE' COMMANDS."9, 2830,$ " ]CATALOG"::" A 032 HELLO":" *I 021 PROGRAM-1":" *B 011 PICTURE":" T 004 NEW TEST",. 220:8:" ]"C-8 18:" THIS IS A SIMULATION OF WHAT HAPPENS":" WHEN YOU USE THE 'LOCK' T DOES NOT HAVE TO BE NEW, BUT ANY PROGRAMS ON THE DISKETTE WILL BE DE- STROYED WHEN YOU INIT."|+2610:2830:1110+ 4:"LOCK (PROGRAMNAME)"::/, " LOCKS THE PROGRAM NAMED (PROGRAMNAME) ON THE DISKETTE TO PROTECT IT FROM ACCIDENTAL CIT. IT WILL BE RUN EVERY TIME YOU 'BOOT' THEDISKETTE (SEE PR#6), SO IT IS RECOM-"*"MENDED THAT YOU NAME THIS PROGRAM 'HELLO' (THAT IS, TYPE 'INIT HELLO').":f+" THE INIT COMMAND ASSUMES THAT THE DISKETTE IN THE DRIVE IS A NEW DISKETTE.I:" FOR EXAMPLE,"::8:"]DELETE HELLO"::" WILL ERASE THE PROGRAM NAMED 'HELLO'.";f)2830:1110)4:"INIT (PROGRAMNAME)":Q*" INITIALIZES AND FORMATS A NEW DISK- ETTE. (PROGRAMNAME) IS THE NAME OF THE PROGRAM YOU ARE USING TO INITIALIZE 7);" FILE LOCKED":16z(" YOU WILL GET THIS ERROR MESSAGE IF":" YOU TRY TO CHANGE A PROGRAM THAT":" IS 'LOCKED'."(255::2830:1110(4:"DELETE (PROGRAMNAME)"::(" ERASES THE FILE NAMED (PROGRAMNAME)":" FROM THE DISKETTE."V)8F":" YOU TRY TO SAVE AN APPLESOFT PROGRAM":" WITH THE SAME NAME AS A FILE OF":" ANOTHER TYPE.":2830'z" ]":16:" NOW TYPE 'SAVE HELLO'."'8:868:" ]";A$:A$"SAVE HELLO"2180(16151,0:I11500::16152,0:I1400::10:958:(NT"::"AND END STATEMENTS."-8&20000:::88020000X8:::(13);(4);"RUN HELLO"8 N24:868:16368,0:7:"PRESS ";::"SPACE BAR";::" TO CONTINUE";8!N16384,128:16368,0:L(34);";(YOUR AGE)":" 40 PRINT ";(34);"IS A COMPUTER PROGRAMMER!";(34);:7" USE YOUR OWN NAME AND AGE. STATEMENT"::"10 WILL PRINT A BLANK LINE. YOU MAY"::"SAVE THE PROGRAM ON A SCRATCH DISKETTE."8:" TRY SOME OTHER PROGRAMS USING PRI$6(M$,1,1)"N"1500036(M$,1,1)"Y"4240[6:2:9:"PROGRAMMING EXERCISE 2":6" TYPE 'NEW' TO CLEAR MEMORY, THEN"::"WRITE THIS PROGRAM:"::" 10 PRINT"N7" 20 PRINT ";(34);"(YOUR NAME)";(34):" 30 PRINT ";(34);"AGE: ";(34);" AND THE EXPRESSION 3+5.".5@20000:Iv5T:10:" DO YOU WISH TO REVIEW THIS"::" LESSON (YES OR NO)? ";XX$5h(XX$,1,1)"Y"Į::905|(XX$,1,1)"N"41806:10:"WOULD YOU LIKE A PROGRAMMING"::"EXERCISE (PLEASE TYPE YES OR NO)? ";M58:"WHICH ONE IS IT (A,B,C OR D)? ";CC$:CC$"A"4120[4CC$"B"CC$"C"CC$"D"4060u4:"INCORRECT.":41404:"YOU'RE RIGHT!" 5,:"THE CORRECT ANSWER IS A. THE PARAMETERS";:"OF THE RESERVED WORD 'PRINT' ARE THE":"STRING ";(34);"3+5=";LOWING STATEMENT:"::" 100 PRINT ";(34);"3+5=";(34);";3 + 5":3" A) THE STRING ";(34);"3+5=";(34);" AND THE":" EXPRESSION 3+5.":" B) THE COMMAND 'PRINT'."3" C) THE NUMBER 100":" D) ALL OF THE ABOVE"6415:92P:"NO, THAT'S NOT IT.":396072d:"THAT'S RIGHT!"2x:"C IS CORRECT. A BASIC STATEMENT STARTS":"WITH A LINE NUMBER, THEN A RESERVED":"WORD, FOLLOWED BY PARAMETERS (IF":"NECESSARY)."24160F34:I;") IDENTIFY THE PARAMETERS IN THE":"FOLD LINE NUMBER":" OPERATORS"1" C) LINE NUMBER RESERVED WORD":" PARAMETERS":" D) PRINT STATEMENTS END STATEMENTS";:" OUTPUT"1(15:958:"WHICH ONE IS IT (A,B,C OR D)? ";CC$:CC$"C"39401<CC$"A"CC$"B"CC$"D"3880 E'. THE":"FIRST 3 STATEMENTS WILL CAUSE THE":"MESSAGE '?SYNTAX ERROR' TO BE PRINTED."b0416003:I;") FIND THE CORRECT FORMAT FOR A BASIC":"PROGRAM STATEMENT.": 1" A) PARAMETERS RESERVED WORD":" LINE NUMBER":" B) RESERVED WOR" C) MISSING PRINT STATEMENT IN 22":" D) ALL OF THE ABOVE"/t16:958:"WHICH ONE IS IT (A,B,C OR D)? ";CC$:CC$"D"3760/CC$"A"CC$"B"CC$"C"3700/:"NOT QUITE.":3780/:"THAT'S CORRECT!"X0:"THE ANSWER IS 'ALL OF THE ABOVIN LINES 30, 40, 50 AND 60, THE"::"VALUES STORED IN 'A' AND 'B' ARE USED"::"TO COMPUTE VALUES FOR C1, C2, C3, & C4."255:20000:12:1:958:220" WHAT WILL BE THE VALUE OF:"::"C1? ";C1$:(C1$)12ĺ:"VERY GOOD!"; (C1$)12ĺ:"NOT 40 LET C2 = A-B"+h" 50 LET C3 = A*B"Dm" 60 LET C4 = A/B"br" 70 PRINT C1,C2,C3,C4"rw" 80 END"|12:" THE 'LET' STATEMENTS IN LINES 10 AND"::"20 WILL STORE THE CONSTANTS IN 'A' AND"::"'B'."20000:12:1:958:220x" 'X'.";::"100 LET X=5"(@20000J1:16:" THE TRUE ASSIGNMENT NATURE OF THE"::"'LET' STATEMENT IS BETTER ILLUSTRATED"::"BY THE FOLLOWING PROGRAM."O20000:T2:" 10 LET A = 9"Y" 20 LET B = 3"^" 30 LET C1 = A+B"c"t.83:I;") FIND THE ERROR IN THE FOLLOWING":"PROGRAM:"::" 5 PRINT 'PRINT 30,40'":" 9.5 PRINT 30,40".L" 22 ";(34);"END OF PROGRAM";(34):" 30 END":?/`" A) WRONG QUOTE MARKS IN 5":" B) 9.5 IS INCORRECT LINE NUMBER":0&- CC$"A"CC$"C"CC$"D"3520N- :"SORRY, THAT'S NOT RIGHT.":3600a- :"GOOD JOB!"-:"B IS THE CORRECT ANSWER. A WILL PRINT":4.2;8.42;"STOP":"C WILL PRINT":"3 * 7 / 5,8.4 + 2,STOP":"AND D WILL PRINT":375,8.42;"STOP"-$41602;";(34);"STOP";(34):" B) PRINT 3 * 7 / 5,8.4 + 2,";(34);"STOP";(34), " C) PRINT ";(34);"3 * 7 / 5,8.4 + 2,STOP";(34):" D) PRINT 3 * 7 / 5,8.4 + 2;";(34);"STOP";(34)- 13:958:"WHICH ONE IS IT (A,B,C OR D)? ";CC$:CC$"B"358SWER IS A. B IS MISSING QUOTE":"MARKS. C WILL PRINT THE FOLLOWING:":"HELLO",42;397;6:"WHILE D WILL GIVE THIS OUTPUT:":"HELLO",42,397,6+p 4160+ 4:I;") FIND THE STATEMENT WHOSE OUTPUT IS:"::375,8.42,"STOP":M, " A) PRINT 4.2;8.4 + T ";(34);"HELLO";(34);",42;397;6":" D) PRINT ";(34);"HELLO";(34);",42,397,6"* 13:958:"WHICH ONE IS IT (A,B,C OR D)? ";CC$:CC$"A"3400* CC$"B"CC$"C"CC$"D"3340*4 :"YOU ARE WRONG.":3420*H :"THAT'S RIGHT!"+\ :"THE ANC) :"IN STATEMENT 30, 'PRINT 5:6' IS NOT A":"VALID STATEMENT."M) 4160) 4:I;") FIND THE STATEMENT WHOSE OUTPUT IS:"::"HELLO";42,397,6:) " A) PRINT ";(34);"HELLO";(34);";42,397,6":" B) PRINT HELLO,42;397;6"U* " C) PRIN";(34):" B) 23 PRINT 3.694*18,12":" C) 30 PRINT 5:6":" D) 100 END"(X 12:958:"WHICH IS INCORRECT (A,B,C OR D)? ";CC$:CC$"C"3220(l CC$"A"CC$"B"CC$"D"3160( :"THAT'S NOT THE ONE.":3240) :"THAT'S THE ONE!"020'' :"THAT IS NOT CORRECT.":3100A' :"YOU ARE CORRECT!"' :"LINE NUMBERS CAN BE ANY WHOLE NUMBERS":"FROM 1 TO 63999, NOT 67000 AS IN D."'0 4160Z(D 5:I;") FIND THE INCORRECT STATEMENT."::" A) 10 PRINT ";(34);"REVIEW EXERCISEST STATEMENT."::" A) 10 PRINT ";(34);"ADD TWO NUMBERS.";(34):" B) 23 PRINT 34,16":" C) 2001 PRINT 34+16":" D) 67000 END"& 12:958:"WHICH IS INCORRECT (A,B,C OR D)? ";CC$:CC$"D"3080' CC$"A"CC$"B"CC$"C"3NTS AS FOLLOWS:"S%T :"10 PRINT 23+7":"20 PRINT 2*3.14159*5":"25 PRINT 22/7"^%h 20000%| I13::12:"REVIEW EXERCISES"% J(((5)7)1):JM(I)JM(I1)2960% M(I1)J:J3000,3140,3280,3460,3640,3820,4000& 5:I;") FIND THE INCORRECVISION":)$ " - SUBTRACTION":4$ 20000$ :3:" THESE OPERATIONS ARE USED MAINLY IN"::"ALGEBRAIC EXPRESSIONS, SUCH AS:":::" 2+6 3/10 5*4 7/10.3"$, 20000%@ 12:1:" THESE OPERATORS CAN BE USED IN PRINT"::"STATEME#x :"B IS THE ANSWER. 'END' STOPS EXECUTION":"OF THE PROGRAM."P# 20000:I# :5:" MATHEMATICAL OPERATIONS CAN BE"::"PERFORMED IN BASIC. THE SYMBOLS ARE:"::# " * MULTIPLICATION":# " + ADDITION": $ " / DI:" 5:958:"THE END STATEMENT CAUSES THE COMPUTER TO":"( " A) PRINT THE MESSAGE 'END'":" B) HALT EXECUTION OF A PROGRAM":" C) EXPLODE"::"A, B OR C? ";KK$"< KK$"B"ĺ:"CORRECT!":2680"P KK$"A"KK$"C"2580"d :"INCORRECT."B190):"THAT'S RIGHT! ";)"A IS THE INCORRECT":"STATEMENT. A VALUE CAN BE ASSIGNED TO":"X, RD OR NUM, BUT YOU CANNOT ASSIGN A":"VALUE TO X+Y.")1400)6:I;") FIND THE INCORRECT STATEMENT:":;*" A) INPUT L,W":" B) INPUT " A) LET X + Y = Z":" B) LET X = Y + Z":" C) LET RD = RD * 3.1416":" D) LET NUM = RAD + 2"(13:958:"WHICH ONE IS INCORRECT (A,B,C OR D)? ";CC$:CC$"A"1180(CC$"B"CC$"C"CC$"D"1160):"YOU ARE WRONG. ";:1THE ONE! ";}'t"C IS CORRECT. A WILL":"INPUT A NUMERIC CONSTANT. D WILL INPUT":"TWO NUMERIC CONSTANTS, SEPARATED BY A"'w"COMMA. B ASSIGNS A VALUE TO N$, BUT":"DOESN'T INPUT ANYTHING."'y1400'~6:I;") FIND THE INCORRECT STATEMENT:":t(Q:" A) INPUT N5":" B) N$ = ";(34);V$;(34):" C) INPUT V$":" D) INPUT M,R7"&V13:958:"WHICH IS CORRECT (A,B,C OR D)? ";CC$:CC$"C"1130&[CC$"A"CC$"B"CC$"D"1110&`:"THAT'S NOT RIGHT. ";:1140 'j:"THAT'S ARE CORRECT! ";%B"LINE NUMBER 200 WILL":"ASSIGN THE VALUE 1 TO X AND 5 TO Y. AT":"LINE 250, X = 2, AND AT 300, Z = 5 * 4,":"OR 20. LINE 330 PRINTS X + Z = 22."%G1400%L5:I;") WHICH STATEMENT CAN BE USED TO":"INPUT THE NAME '";V$;"'?"e&OF 1,5 WHAT WILL OUTPUT BE":" A) 'X + Z'":" B) 21":" C) Z * 4":" D) 22"$$17:958:"WHICH IS CORRECT (A,B,C OR D)? ";CC$:CC$"D"1080$)CC$"A"CC$"B"CC$"C"1060$.:"THAT'S NOT RIGHT. ";:1090%8:"YOU 6)1):JM(I)JM(I1)1010J#M(I1)J:J1050,1100,1150,1200,1250,1300#3:" 100 PRINT ";(34);"INPUT ANY TWO NUMBERS";(34):" 200 INPUT X,Y":" 250 X = X + 1":" 300 Z = Y * 4":" 330 PRINT X + Z":" 400 END"g$10:I;") FOR INPUT 4);";NM$":" 200 END"V":"LET'S SIMULATE A RUN OF THIS PROGRAM.":"TYPE 'RUN'."}"10:958:"]";TZ$:TZ$"RUN"730""INPUT YOUR NAME.""12:958:NM$""GLAD TO MEET YOU, ";NM$:20000"I13::12:"REVIEW EXERCISES"#J(((5)20000:1:16:958:225l!v" LINE NUMBER 200 WILL INPUT TWO NUMERIC":"CONSTANTS SEPARATED BY A COMMA."|!255:20000!:2:" 100 PRINT ";(34);"INPUT YOUR NAME.";(34):" 150 INPUT NM$""" 175 PRINT ";(34);"GLAD TO MEET YOU, ";(3OOK LIKE THIS:"9 N7:"125 INPUT M$":"200 INPUT X,Y" X11:" WHEN EACH STATEMENT IS EXECUTED, IT"::"WILL PRINT A QUESTION MARK (?)." b16:" LINE NUMBER 125 WILL INPUT A"::"CHARACTER STRING AND ASSIGN IT TO THE" g:"VARIABLE 'M$'."!l"EXECUTING, BY PROMPTING THE USER FOR"::"A RESPONSE.":::" BY USING 'INPUT' STATEMENTS, YOU CAN"::"CHANGE VALUES FROM ONE RUN TO THE NEXT"?:"WITHOUT CHANGING THE PROGRAM.":20000 D:2:" IN A PROGRAM, THE 'INPUT' STATEMENTS"::"MAY LAND 1 TO 'X'."k ::" THE PREVIOUS VALUE OF 'X' (X = 7) HAS"::"BEEN REPLACED, AND NO LONGER EXISTS."x20000:&4:" NOW LET'S LEARN ABOUT THE 'INPUT'"::"STATEMENT. 'INPUT' CAN ASSIGN VALUES"70:"TO VARIABLES WHILE THE PROGRAM IS"::" THE STATEMENT":46" 200 LET X = X + 1":7"IS NOT AN EQUIVALENCE STATEMENT. IT"::"DOES NOT MEAN THAT 7 = 7 + 1."::" THE 'LET' STATEMENT IS ACTUALLY AN"::"ASSIGNMENT STATEMENT WHICH ASSIGNS (IN"::"THIS CASE) THE SUM OF 'X' T X=7""200 LET X=X+1""8h" LINE NUMBER 100 ASSIGNS A VALUE"::"OF 7 TO VARIABLE 'X'."::" LINE NUMBER 200 ADDS 1 TO 'X', SO"::"X = 7 + 1."::" THUS THE VALUE 8 IS NOW PLACED IN "::"STORAGE LOCATION 'X'."20000:(C3$)27ĺ:"NO.";(" C3 = 27"U20000:18:1:868:"C3 = 27":20:868"C4? ";C4$:(C4$)3ĺ:"VERY GOOD!";(C4$)3ĺ:"THAT'S NOT IT.";" C4 = 3"20000:" OTHER USEFUL 'LET' STATEMENTS ARE:"4"100 LE QUITE.";" C1 = 12"K255:20000:14:1:868:"C1 = 12":16:868t"C2? ";C2$:(C2$)6ĺ:"CORRECT!";(C2$)6ĺ:"INCORRECT.";" C2 = 6"20000:16:1:868:"C2 = 6":18:868"C3? ";C3$:(C3$)27ĺ:"YOU'RE RIGHT!";@`jj@jA`Mu ) bLf`8]@]AWjcj@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@cjh8&ȑ@Hȑ@Ah@LgHȑ@ȑ@j htphso`hMhL`9]Vj8Uj]8]97]Tj6Sj]6]7`INILOASAVRUCHAIDELETLOCUNLOCCLO dg@uu`  \j j0 g\j g _ Qh ^f\jlZ]l^]?jcjqiH _cjh`fjuhjujju]u]u@OjAPj`uj@`@u&`QjRj`E gLsg g g @DAE@uj`8`]] %@ @A@`jL]` bOjjPjjujj dg bLe Ngej)njojojnj f8ɍ` ^ff\juuuLf ^fNRj f bRjΩLf)\jZj ʽ L_Hjv 3h`0h8` b [gL_ f NgСuu fu`jAj@` k bLfu_jbjJLeujjLze`jj d _ QhlX]J̥KlV] d _ QhlV] eօ3L e3L &eRjL_ &eQjL_ dg bL4e Ngej)nju u f`@-ejfjfj ]u bLc bufj`L e.j ` jtjQjLd eLfgh chgLc c8LʨM cˤLcuH bhLguuuuu fuuLfuuu fLbLf c b#-uuj( d zdegehtpjigh qd Qhl`] d zd8L`jMajEK@>ˆʎuuL d ]u ]uuuuu faju`ju`cjlj mjljljumju bELfAD@ Cg Ng gcjuLfujɠ% dg: bLb gj@ NguLf g g g g bLc` -ej L` csjrj cmjlj csjrjLc b-uLf c zdej)rjsj zdrjsjLqd ]c Qhlrjj Lf c816368,0:7:"PRESS ";::"SPACE BAR";::" TO CONTINUE";T3%N16384,128:16368,0:ZU(4);"RUN LRNBAS-4"DDLbDLDL^j tj^j`,tjP _pMtj-^j^j`jDH chWjLg b dg@` bLb ]u ]u cj bLb b fLFeLc::" VARIABLES FOR THE NAME AND ADDRESS."2::"2. WRITE A PROGRAM THAT PRINTS THE SUM,"::" DIFFERENCE, PRODUCT, AND QUOTIENT"::" OF ANY TWO NUMBERS YOU INPUT."2200002::2200002p::(13);(4);"RUN HELLO"83 N24:868:1>(MM$,1,1)"N"600011H(MM$,1,1)"Y"21001:9:"PROGRAMMING EXERCISE 3":4:"DO ONE OF THE FOLLOWING EXERCISES:":7:"1. WRITE A PROGRAM THAT ASKS FOR YOUR",2:" NAME AND ADDRESS, INPUTS THEM, AND "::" PRINTS THEM OUT. USE SEPARATE"VALUE TO A VARIABLE."0A1400-0x20000:Iu0:10:" DO YOU WISH TO REVIEW THIS"::" LESSON (YES OR NO)? ";XX$0(XX$,1,1)"Y"550(XX$,1,1)"N"200004:10:" WOULD YOU LIKE A PROGRAMMING"::" EXERCISE (PLEASE TYPE YES OR NO)? ";MM$ ABOVE."J/16:958:"WHICH ONE IS IT (A,B,C OR D)? ";CC$:CC$"A"1330o/#CC$"B"CC$"C"CC$"D"1310/(:"NOT CORRECT. ";:1340/2:"THAT'S RIGHT! ";0<"THE ANSWER IS A. THE":"'INPUT' STATEMENT ALLOWS THE PROGRAM":"USER TO ASSIGN A :." A) ALLOWS THE USER TO ASSIGN A":" VALUE TO A VARIABLE.":" B) ERASES ALL PREVIOUSLY ASSIGNED":" MEMORY LOCATIONS."/" C) ASSIGNS A VALUE TO A VARIABLE":" AT SOME POINT IN THE PROGRAM.":" D) NONE OF THE"A"CC$"B"CC$"D"1260:-:"NOT QUITE. ";:1290S-:"THAT'S RIGHT! ";- "THE ANSWER IS C. THE":"'LET' STATEMENT ASSIGNS A VALUE TO A":"VARIABLE WHEN THE STATEMENT IS EXECUTED."-1400.6:I;") WHAT DOES AN 'INPUT' STATEMENT DO?") ERASES ALL PREVIOUSLY ASSIGNED":" MEMORY LOCATIONS."," C) ASSIGNS A VALUE TO A VARIABLE":" AT SOME POINT IN THE PROGRAM.":" D) NONE OF THE ABOVE.",16:958:"WHICH ONE IS IT (A,B,C OR D)? ";CC$:CC$"C"1280-CC$ECT":"STATEMENT IS D. THE VARIABLES IN AN":"'INPUT' STATEMENT SHOULD BE SEPARATED":"BY COMMAS, NOT SEMICOLONS."}+1400+6:I;") WHAT DOES A 'LET' STATEMENT DO?":@," A) ALLOWS THE USER TO ASSIGN A":" VALUE TO A VARIABLE.":" BNAME$,X5,T2":" C) INPUT MX3$":" D) INPUT NT;HK"*13:958:"WHICH ONE IS INCORRECT (A,B,C OR D)? ";CC$:CC$"D"1230*CC$"A"CC$"B"CC$"C"1210*:"SORRY, THAT'S NOT IT. ";:1240*:"EXCELLENT CHOICE! ";s+"THE INCORRAT OF A FOR-NEXT IS"::" LN FOR V = I TO F STEP N":" PROGRAM STATEMENTS":" LN NEXT V"!411:" V IS A NUMERIC VARIABLE NAME. ITS"::"VALUE WILL INCREASE BY THE VALUE OF N"!>:"EACH TIME THE LOOP IS EXECUTED."!C20000`"H1ROUGH THE LOOP.":20000O 16:1:" LINE 210 PRINTS N AND N SQUARED.":20000 18:1:" LINE 220 IS THE 'NEXT', WHICH ADDS 1"::"TO N, THEN RETURNS TO LINE 200. THE"::"PROGRAM WILL END ONCE N EXCEEDS 10." 20000j!*:3:" THE GENERAL FORMN";:20:"210 PRINT N, N*N":"120 LET N = N + 1";:20:"220 NEXT N""130 IF N <= 10";:20:"230 END":" THEN 110":"140 END":" LINE 200 IS A 'FOR' STATEMENT. IT"::"SETS N TO 1 INITIALLY, THEN ADDS 1" :"TO N EACH TIME THOL.":~:" NOW LET'S LEARN ABOUT THE 'FOR-NEXT'"::"STATEMENT, WHICH IS CONVENIENT FOR"::"CREATING CONTROLLED LOOPS."20000:"THESE TWO PROGRAMS DO THE SAME THING:"::"100 LET N = 1";:20:"200 FOR N = 1 TO 10"F"110 PRINT N, N*590[:"INPUT THE CODE WORD NOW.":K$:K$"LESSON4"ĺ"NO, READ THE EXAMPLE ABOVE.":565D"EXCELLENT! YOU MUST HAVE":"READ THE EXAMPLE PROGRAM."N20000:6:" YOU CAN SEE THAT 'IF-THEN' HAS A WIDE"::"RANGE OF USES, INCLUDING LOOP CONTR25 PRINT ";(34);"EXCELLENT! YOU MUST HAVE";(34):"250 PRINT ";(34);"READ THE EXAMPLE PROGRAM.";(34)z"275 END"&12:"TYPE 'RUN' FOR A SIMULATION."014:958:"]";XX$:XX$"RUN"5605(37)20ĺ:"STUDY THE PROGRAM MORE CAREFULLY.":a:" LOOK AT THIS EXAMPLE PROGRAM."::"100 PRINT ";(34);"INPUT THE CODE WORD NOW.";(34)"125 INPUT K$":"150 IF K$ = ";(34);"LESSON4";(34);" THEN 225":"175 PRINT ";(34);"NO, READ THE EXAMPLE ABOVE.";(34);"200 GOTO 100"j"2NUM'"::"BY 1. LINE 150, HOWEVER, WILL 'GOTO'":"110 ONLY IF NUM<101. THE PROGRAM WILL"::"SQUARE THE NUMBERS FROM 1 TO 100.":2000015:1:958:220::" YOU CAN PROBABLY THINK OF SEVERAL"::"OTHER WAYS TO WRITE THIS PROGRAM.":255:20000" 120 PRINT ";(34);"THE NUMBER IS ";(34);";NUM"" 130 PRINT ";(34);"THE SQUARE IS ";(34);";SQR":" 140 LET NUM = NUM + 1":" 150 IF NUM < 101 THEN 110":" 160 END"20000215:1:" AS BEFORE, LINE 140 INCREMENTS 'L PRINT THE VALUE OF 'SQR'"::"IF L2$='YES'. THIS IS USEFUL WITH"e:"USER INPUTS.":255:20000:2:" LET'S REWRITE THE PREVIOUS PROGRAM"::"WITH AN 'IF-THEN' TO CONTROL THE LOOP."6:" 100 LET NUM = 1":" 110 SQR = NUM * NUM":0 CONTAINS A SHORTENED 'GOTO'."::"IF 'NUM' IS 100, THEN THE PROGRAM WILL":s"CONTINUE FROM LINE 160.":2000016:1:958:220:" IF K IS LESS THAN 0 WHEN LINE 75 IS"::"EXECUTED, THEN THE PROGRAM ENDS.":20000C16:1:958:" LINE 90 WIL BH [q qh`Los s p BH [q qh`Los ssÃututuututuuuusuL^ou-uIuuuu uu` o 4o r-u! o p8uuutut 7pLs (ku0+uBuCs r 7pLsu jHjH`LgsL{su0u jHjH` s luLs s q lH qhBLl pwst~s!klWlol*mmll9lmnm~s~sllll~s~sllll~s_js jnu jHjH`Lcs (kLs kuuuuu q^s_j isJ QjL_sLsstts Drstuuutuuut 7p o w :osutDATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx- ( ϠSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIF!pppp p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF RRECT (A,B,C OR D)? ";CC$:CC$"D"1080$)CC$"A"CC$"B"CC$"C"1060$.:"THAT'S NOT RIGHT. ";:1090$8:"YOU ARE CORRECT! ";u%B"LINE NUMBER 200 WILL":"ASSIGN THE VALUE 1 TO X AND 5 TO Y. AT":"LINE 250, X = 2, AND AT 300, Z = 5 * 4,":34):" 200 INPUT X,Y":" 250 X = X + 1":" 300 Z = Y * 4":" 330 PRINT X + Z":" 400 END"3$10:I;") FOR INPUT OF 1,5 WHAT WILL OUTPUT BE":" A) 'X + Z'":" B) 21":" C) Z * 4":" D) 22"v$$17:958:"WHICH IS CO Ng gcjuLfujɠ% dg: bLb gj@ NguLf g g g g bLc` -ej L` csjrj cmjlj csjrjLc b-uLf c zdej)rjsj zdrjsjL00,1150,1200,1250,1300#3:" 100 PRINT ";(34);"INPUT ANY TWO NUMBERS";(L FORMULA IS USED."$.20000:::ZU(4);"RUN LRNBAS-4"DDLbDLDL^j tj^j`,tjP _pMtj-^j^j`jDH chWjLg b dg@` bLb ]u ]u cj bLb b fLFeLccjlj mjljljumju bELfAD@ CgUM OF ALL NUMBERS FROM A TO B."::" INPUT A AND B AND USE A FOR-NEXT"::" LOOP: FOR N = A TO B.".:"2. WRITE A PROGRAM SIMILAR TO THE LAST"::" EXAMPLE, WHERE NUMBERS ARE INPUT AND"::" YOU USE THE OUTPUT TO GUESS WHAT"::" MATHEMATICAE (PLEASE TYPE YES OR NO)? ";XX$:,Н(XX$,1,1)"Y"41000U,4(XX$,1,1)"N"40300u,::(13);(4);"RUN HELLO",(:9:"PROGRAMMING EXERCISE 4":4:"DO ONE OF THE FOLLOWING EXERCISES:"g-7:"1. WRITE A PROGRAM TO COMPUTE AND PRINT"::" THE S:"PRESS ";::"SPACE BAR";::" TO CONTINUE";J+%N16384,128:16368,0:+@:10:" DO YOU WISH TO REVIEW THIS"::" LESSON (YES OR NO)? ";XX$+(XX$,1,1)"Y"ė:170+(XX$,1,1)"N"40000 ,l:10:" WOULD YOU LIKE A PROGRAMMING"::" EXERCIS AND":"WILL BE EXECUTED 5 TIMES.",*n1490Z*x"THE LOOP IS FROM LINES 120 TO ??? ";AN$|*:(AN$)200ĺ"YES! ";:1430*"NO. ";*"THE LOOP IS FROM LINE 120 ('FOR')":"TO LINE 200 ('NEXT')."*20000:I*40000.+ N24:868:16368,0:7;:1330)("NOT QUITE. ";a)2"THE INITIAL VALUE IS 1. SEE":"THE FOR STATEMENT AT LINE 120."k)<1490)F"HOW MANY TIMES WILL A NUMBER BE INPUT":"AT LINE 140? ";AN$)P:(AN$)5ĺ"RIGHT! ";:1380)Z"WRONG. ";"*d"LINE 140 IS IN THE LOOP, VALUE OF I DURING THE LAST TIME THROUGH THE LOOP? ";AN$Y(:(AN$)5ĺ"YES! ";:1280g("NO. ";("THE FINAL VALUE IS 5. SEE THE FOR":"STATEMENT AT LINE 120."( 1490("WHAT IS THE INITIAL VALUE OF I? ";AN$):(AN$)1ĺ"CORRECT!! "= ";(34);"N * 2 + 4";(34);" THEN":" PRINT ";(34);"CORRECT!";(34)'."240 PRINT ";(34);"F = N * 2 + 4";(34):"250 END"'I13:18:1:958'J(((I2)4)1):JL(I)JL(I1)1210'L(I1)J:J1250,1300,1350,14009("WHAT IS THE4);"INPUT YOUR NUMBER";(34)J&"140 INPUT N":"160 LET F = N * 2 + 4"&"170 PRINT ";(34);"INPUT=";(34);";N,";(34);"OUPUT=";(34);";F"&"200 NEXT I":"210 PRINT ";(34);"F = ? (INPUT YOUR GUESS)";(34)K'$"220 INPUT FG$":"230 IF FG$ THE"::"STATEMENTS BETWEEN 'FOR' AND 'NEXT' WILL"\%"BE REPEATED IN THE PROCESS.":20000%:"100 PRINT ";(34);"YOU WILL HAVE 5 CHANCES TO";(34):"110 PRINT ";(34);"GUESS THE SECRET FUNCTION.";(34)&"120 FOR I = 1 TO 5":"130 PRINT ";(3ILL COUNT DOWN.":20000~$10:1:958:" EACH TIME THE 'NEXT' STATEMENT IS"::"REACHED, N IS ADDED TO V, AND THEN V IS":$"COMPARED TO F. UNLESS V IS GREATER THAN":"F, EXECUTION WILL CONTINUE FROM THE":2%"'FOR' STATEMENT. NOTICE THAT ALL ION.":20000p#p11:1:958:" N MAY BE A CONSTANT, VARIABLE, OR"::"EXPRESSION. V CHANGES BY THE VALUE OF"#z:"N EACH TIME THROUGH THE LOOP. IF THE"::"'STEP N' IS LEFT OUT, N=1 IS ASSUMED."::"IF N IS NEGATIVE (AND I > F), THE LOOP"$:"W1:1:958:" I IS THE INITIAL VALUE ASSIGNED TO V."::"IT MAY BE A CONSTANT, VARIABLE, OR AN""R:"ARITHMETIC EXPRESSION.":20000"\11:1:958:" F IS THE FINAL VALUE ASSIGNED TO V."::"IT TOO MAY BE A CONSTANT, VARIABLE, OR" #f:"AN EXPRESS:"WHEN 'TEXT' IS USED, HOWEVER, THE PART":"OF THE SCREEN THAT WAS GRAPHICS BEFORE"::"WILL CONTAIN SOME STRANGE CHARACTERS,":"SO DON'T BE ALARMED BY THIS.":20000:I13::11:"REVIEW EXERCISES"N((I)61):XX(N)11010&XX21I:K1300:K:IrJ135:0:AA1:18,21A:K1500(J30)::6:BA4:18,21B:K1500(J30)::J:20000::5:" JUST AS 'GR' IS USED TO ENTER THE"::"GRAPHICS MODE, THE COMMAND 'TEXT' WILL":,"CHANGE BACK TO THE NORMAL TEXT MODE.":S\"SQUARE DOWN ONE LINE. THIS PROCESS"::"IS REPEATED 35 TIMES.":255:20000f16:1:958:17:"TYPE 'RUN' FOR A SIMULATION.":p"]";AN$:AN$"RUN"Ģ19:1:868:880z:22:9:"SLOW MOTION SIMULATION":K1200::A0:6:I14:18,T TIME.":20000}>16:1:958:17:" LINE 180 PLOTS A BLACK LINE ALONG THE"::"TOP OF THE SQUARE. 190 SETS THE COLOR":H"BACK TO BLUE AGAIN.":20000R16:1:958:" LINES 200 AND 210 PLOT A NEW LINE"::"BELOW THE OLD SQUARE, 'MOVING' THE":" LINES 120 TO 140 CREATE A SQUARE AT"::"X=18 TO 21 AND Y=1 TO 4.":20000*16:1:958:" LINES 150 TO 220 ARE REPEATED 35"::"TIMES. LINE 160 SETS COLOR TO BLACK.":4"LINE 170 INCREMENTS A BY 1, SO A=1 AFTER":"LINE 170 IS EXECUTED THE FIRS":" 200 LET B = A + 4":" 210 HLIN 18,21 AT B"b" 220 NEXT J":" 230 END" 17:" LINE 100 SETS THE GRAPHICS MODE AND"::"CLEARS THE SCREEN. LINE 110 SETS THE":"COLOR TO 6 (MEDIUM BLUE).":20000L 225:17:1:958::" 100 GR":" 110 COLOR= 6":" 120 FOR I = 1 TO 4"" 130 HLIN 18,21 AT I":" 140 NEXT I":" 150 FOR J = 1 TO 35"" 160 COLOR= 0":" 170 LET A = A + 1":" 180 HLIN 18,21 AT A"9" 190 COLOR= 6THE GRAPHICS COMMANDS,"::"IT IS POSSIBLE TO WRITE PROGRAMS WITH":"ANIMATED (MOVING) GRAPHICS. LET'S LOOK"::"AT AN EXAMPLE.":20000:A0:6:I14:18,21I::J1800:J135:0:AA1:18,21A:6:BA4:18,21B:J:20000C: A) ALLOWS THE USER TO ASSIGN A":" VALUE TO A VARIABLE.":" B) ERASES ALL PREVIOUSLY ASSIGNED":" MEMORY LOCATIONS."," C) ASSIGNS A VALUE TO A VARII6:I;") WHAT DOES A 'LET' STATEMENT DO?": ," A) ALLOWS THE USER TO ASSIGN A":" VALUE TO A VARIABLE.":" B) ERASES ALL PREVIOUSLY ASSIGNED":" MEMORY LOCATIONS."," C) ASSIGNS A VALUE TO A VARIIVARI`TEMENT DO?": ," 0u*CC$"A"CC$"B"CC$"C"1210*:"SORRY, THAT'S NOT IT. ";:1240*:"EXCELLENT CHOICE! ";?+"THE INCORRECT":"STATEMENT IS D. THE VARIABLES IN AN":"'INPUT' STATEMENT SHOULD BE SEPARATED":"BY COMMAS, NOT SEMICOLONS."I+1400z+SIGN A":"VALUE TO X+Y."q)1400)6:I;") FIND THE INCORRECT STATEMENT:":*" A) INPUT L,W":" B) INPUT NAME$,X5,T2":" C) INPUT MX3$":" D) INPUT NT;HK"P*13:958:"WHICH ONE IS INCORRECT (A,B,C OR D)? ";CC$:CC$"D"123"WHICH ONE IS INCORRECT (A,B,C OR D)? ";CC$:CC$"A"1180(CC$"B"CC$"C"CC$"D"1160(:"YOU ARE WRONG. ";:1190(:"THAT'S RIGHT! ";g)"A IS THE INCORRECT":"STATEMENT. A VALUE CAN BE ASSIGNED TO":"X, RD OR NUM, BUT YOU CANNOT AS"COMMA. B ASSIGNS A VALUE TO N$, BUT":"DOESN'T INPUT ANYTHING."'y1400'~6:I;") FIND THE INCORRECT STATEMENT:":@(" A) LET X + Y = Z":" B) LET X = Y + Z":" C) LET RD = RD * 3.1416":" D) LET NUM = RAD + 2"(13:958:ECT (A,B,C OR D)? ";CC$:CC$"C"1130&[CC$"A"CC$"B"CC$"D"1110&`:"THAT'S NOT RIGHT. ";:1140&j:"THAT'S THE ONE! ";I't"C IS CORRECT. A WILL":"INPUT A NUMERIC CONSTANT. D WILL INPUT":"TWO NUMERIC CONSTANTS, SEPARATED BY A"'w"OR 20. LINE 330 PRINTS X + Z = 22."%G1400%L5:I;") WHICH STATEMENT CAN BE USED TO":"INPUT THE NAME '";V$;"'?"1&Q:" A) INPUT N5":" B) N$ = ";(34);V$;(34):" C) INPUT V$":" D) INPUT M,R7"t&V13:958:"WHICH IS CORRTTERS.":.:"2. WRITE AN ANIMATED GRAPHICS PROGRAM"::" SIMILAR TO THE FALLING SQUARE EXAMPLE":" IN THE LESSON, BUT MAKE THE SQUARE"::" BOUNCE UP AND DOWN AS MANY TIMES AS".":" YOU LIKE.".20000:::IELLO"Q-(:9:"PROGRAMMING EXERCISE 5":3:"DO ONE OF THE FOLLOWING EXERCISES:"-5:"1. WRITE A PROGRAM THAT WILL PRINT"::" YOUR NAME IN LARGE GRAPHICS LETTERS."::" USE PLOT, HLIN AND VLIN. YOU WILL" .:" HAVE TO EXPERIMENT WITH THE LE:" LESSON (YES OR NO)? ";XX$=,(XX$,1,1)"Y"ė:::290X,(XX$,1,1)"N"40000,l:10:" WOULD YOU LIKE A PROGRAMMING"::" EXERCISE (PLEASE TYPE YES OR NO)? ";XX$,Н(XX$,1,1)"Y"41000,4(XX$,1,1)"N"40300-::(13);(4);"RUN H"NO, NOT QUITE. ";e+|"B IS CORRECT. 'VLIN A,B":"AT 5' PLOTS A VERTICAL LINE FROM":"5,A TO 5,B."k+q++ N24:868:16368,0:7:"PRESS ";::"SPACE BAR";::" TO CONTINUE";+%N16384,128:16368,0:,@:10:" DO YOU WISH TO REVIEW THIS": 5,A TO 5,B."::" C) PLOTS A 'COLOR= 5' BLOCK AT A,B."::" D) PLAYS 'A,B AT 5' ON THE VIOLIN."*^16:958:"WHICH ONE (A, B, C, OR D)? ";SL$:SL$""Ė1:1630*`(SL$)68(SL$)65Ė1:1630*c:*h(SL$,1)"B"ĺ"GOOD CHOICE!!! ";:1660+rLLENT CHOICE! ";:15601)"SORRY, NOT QUITE. ";)"B IS CORRECT.":"'HPLOT 4,9 AT N' PLOTS A HORIZONTAL LINE";:"FROM 4,N TO 9,N.")")@5:I;") WHAT DOES 'VLIN A,B AT 5' DO?":b*J" A) PLOTS A LINE FROM A,B TO 5,B."::" B) PLOTS A LINE FROM N,9."::" B) PLOTS A LINE FROM 4,N TO 9,N."::" C) PLOTS AN N-COLORED BLOCK AT 4,9."::" D) MAKES THE COMPUTER MAD."(16:958:"WHICH ONE (A, B, C, OR D)? ";SL$:SL$""Ė1:1530((SL$)68(SL$)65Ė1:1530(:)(SL$,1)"B"ĺ"EXCEL$,1)"D"ĺ"CORRECT!!! ";:14605'"NOT QUITE. ";'"THE ANSWER IS D. GR SETS":"GRAPHICS, HLIN PLOTS A HORIZONTAL LINE,":"AND COLOR SETS THE COLOR OF BLOCKS."''5:I;") WHAT DOES 'HLIN 4,9 AT N' DO?":{(" A) PLOTS A LINE FROM 4,9 TO&x5:I;") WHICH COMMAND PUTS A BLOCK AT X,Y?":\&" A) GR X,Y"::" B) HLIN X AT Y"&:" C) COLOR = X,Y"::" D) PLOT X,Y"&16:958:"WHICH ONE (A, B, C, OR D)? ";SL$:SL$""Ė1:1430&(SL$)68(SL$)65Ė1:1430&: '(S:SL$""Ė1:13303%4(SL$)68(SL$)65Ė1:1330;%7:d%<(SL$,1)"C"ĺ"CORRECT!!! ";:1360y%F"INCORRECT. ";%P"THE ANSWER IS C. 'COLOR=X'":"SETS THE COLOR OF BLOCKS TO BE PLOTTED":"TO THE COLOR INDICATED BY THE VALUE":"OF 'X'."%Z1" B) CHANGES THE COLOR OF BLOCKS ON THE":" SCREEN TO THE COLOR 'X'.":$(" C) SETS THE COLOR OF BLOCKS YET TO BE":" PLOTTED TO THE VALUE OF 'X'."::" D) PRINTS A COLORED 'X' ON THE SCREEN."%216:958:"WHICH ONE (A, B, C, OR D)? ";SL$T'S RIGHT!! ";:1260.#"THAT'S NOT IT. ";#"THE ANSWER IS B. THE":"'TEXT' COMMAND RETURNS THE SCREEN TO":"TEXT MODE."##3:I;") WHAT DOES 'COLOR = X' DO?":M$" A) PLOTS A COLORED BLOCK AT THE":" LOCATION SPECIFIED BY 'X'."::SCREEN TO TEXT MODE.":|"" C) PRINTS STRANGE THINGS ON THE":" GRAPHICS SCREEN."::" D) PRINTS ONE LINE OF TEXT.""16:958:"WHICH ONE (A, B, C, OR D)? ";SL$:SL$""Ė1:1230"(SL$)68(SL$)65Ė1:1230":#(SL$,1)"B"ĺ"THAHT!! ";:1160'!~"THAT'S NOT IT. ";l!"THE ANSWER IS A. 'GR'":"SETS AND CLEARS THE GRAPHICS SCREEN."r!!4:I;") WHAT DOES THE 'TEXT' COMMAND DO?":"" A) CREATES 4 LINES OF TEXT BELOW THE":" GRAPHICS SCREEN."::" B) RETURNS THE SCREEN.":u `" C) PRINTS 4 LINES OF TEXT AT THE":" BOTTOM OF THE SCREEN."::" D) NO SUCH COMMAND EXISTS." j17:958:"WHICH ONE (A, B, C, OR D)? ";SL$:SL$""Ė1:1130 l(SL$)65(SL$)68Ė1:1130 o:!t(SL$,1)"A"ĺ"THAT'S RIG(N)1:N1100,1200,1300,1400,1500,1600;20000:I:40000jL4:I;") WHAT DOES THE 'GR' COMMAND DO?": V" A) SETS AND CLEARS THE GRAPHICS SCREEN";:" AND SETS COLOR TO BLACK."::" B) PLOTS A POINT OF A SPECIFIED COLOR":" ON THE GRAPHICS:^&t"COMPARED TO THE ONE FOLLOWING IT. IF"::"THEY ARE NOT IN ORDER, 'FLAG' IS SET TO":&~"1, AND THE WORDS ARE EXCHANGED.":20000&13:1:958:" NOTICE THAT A TEMPORARY VARIABLE X$ IS":"USED AT LINE 230 TO STORE THE VALUE OF":s'"WRD$ THEN 200"%`13:" THIS PROGRAM SEGMENT WILL SORT A"::"5-ELEMENT STRING ARRAY, SUCH AS A LIST"::"OF WORDS, INTO ALPHABETICAL ORDER.":20000&j220:13:1:958:" LINE 200 INITIALIZES A FLAG. AT 210"::"WE ENTER A LOOP, AND AT 215 THE WORD IS"ER B$?"$820000$L:2:"200 LET FLAG = 0":"210 FOR R = 1 TO 4":"215 IF WRD$(R) < = WRD$(R+1) THEN 265":"220 LET FLAG = 1" %V"230 LET X$ = WRD$(R)":"240 LET WRD$(R) = WRD$(R+1)":"250 LET WRD$(R+1) = X$":"265 NEXT R":"270 IF FLAG = 1A$ ALPHABETICALLY":16:"BEFORE B$?":f#4:"A$ > B$";5);"IS A$ ALPHABETICALLY":16:"AFTER B$?":#$3:"A$ < = B$";4);"IS A$ IDENTICAL TO OR":16:"ALPHABETICALLY BEFORE B$?"$.3:"A$ > = B$";4);"IS A$ IDENTICAL TO OR":16:"ALPHABETICALLY AFTCAN BE USED WITH IF-THEN":"STATEMENTS TO COMPARE STRINGS."::" OPERATOR DESCRIPTION":" -------- -----------""4:"A$ = B$";5);"IS A$ IDENTICAL TO B$?"::3:"A$ < > B$";4);"ARE A$ AND B$ DIFFERENT?":&#4:"A$ < B$";5);"IS NSTANTS, VARIABLES, AND ARRAYS. NOW,"::"YOU WILL LEARN A FEW MORE WAYS TO USE":!"THEM.":::" LIKE NUMBERS, STRINGS CAN BE COMPARED"::"TO EACH OTHER, USING RELATIONAL"::"OPERATORS. THIS HAS INTERESTING USES.":20000":"THESE OPERATORS D OF THE PROGRAM? ";AN$:::(AN$)3ĺ"VERY GOOD! ";:920P "NOT QUITE. "; "THE POINTER WILL POINT TO 3,":"SINCE THIS HAS NOT BEEN USED YET WHEN"::"THE PROGRAM ENDS." 1000S!20000::5:" YOU HAVE ALREADY LEARNED ABOUT STRING"::"COUE OF WC? ";AN$:::(AN$)1066ĺ"EXCELLENT CHOICE! ";:870Y\"THAT'S NOT RIGHT. ";f"WC=1066, SINCE THE"::"DATA POINTER WILL POINT TO 1066 WHEN"::"'READ WC' IS EXECUTED."p1000; 12:"WHAT WILL THE DATA POINTER POINT TO"::"AT THE ENEND"'KT((2)31):KT800,850,900| 13:"WHAT WILL BE THE VALUE OF JS(4)? ";AN$:::(AN$)9ĺ"VERY GOOD! ";:820*"NOT QUITE. ";4"JS(4)=9, SINCE THE DATA"::"POINTER WILL POINT TO 9 WHEN K=4.">1000=R13:"WHAT WILL BE THE VAL TYPES OF":r"VARIABLES IN LINE 120. ALSO, DO NOT"::"TRY TO 'READ' IF ALL DATA HAS BEEN READ.":255:20000:4:" 100 DATA 34,12,16,9,17,1066,3":" 110 FOR K = 1 TO 5":" 120 READ JS(K)":" 130 NEXT K":" 140 READ WC":" 150 0 WILL"::"ASSIGN VALUES TO THE VARIABLES. A DATA"::"POINTER INDICATES WHICH ITEM IS TO BE"::"READ NEXT.":20000 11:1:958:220:" IN A PROGRAM SEGMENT SUCH AS THIS,"::"YOU MUST BE SURE THE DATA IS LISTED"::"CORRECTLY, SINCE THERE ARE TWO;"JIM";(34);",14,";(34);"MARY";(34);",18,";(34);"BOB";(34);",9, ";(34);"CARMEN";(34);",17,";(34);"FRED";(34);",12"" 110 FOR J = 1 TO 4":" 120 READ NAME$(J),AGE(J)":" 130 NEXT J"v11:" THE 'READ' STATEMENT IN LINE 12WING 'DATA' MAY BE"::"NUMERIC OR STRING.":" THE 'READ' STATEMENT ASSIGNS A"::"VARIABLE TO AN ITEM, THEN CONTINUES WITH":"THE NEXT ITEM. THE GENERAL FORMAT IS:"::" LN READ VAR1,VAR2,...,VARN":20000i:3:" 100 DATA ";(34)Xv"WRITTEN INTO THE PROGRAM AND PLACED IN"::"THE ARRAY USING A SIMPLE LOOP.":20000:2:" DATA STATEMENTS MAY BE PLACED ANYWHERE":"IN THE PROGRAM. THE GENERAL FORMAT IS:":-:" LN DATA ITEM1,ITEM2,...,ITEMN":::" THE ITEMS FOLLOOME PURPOSES, AN ARRAY MAY BE"::"USEFUL, BUT INPUTTING ALL ITS VALUES":b"WOULD BE TIME-CONSUMING. A TABLE OF"::"NAMES OF THE 50 STATES IS AN EXAMPLE.":l:" READ-DATA STATEMENTS MAKE IT EASY TO"::"CREATE SUCH ARRAYS. THE DATA CAN BE":AN$"B"AN$"C"5201:"THAT'S NOT IT. ";&"D IS THE ONE. THE":"STATEMENT AT 'A' TRIES TO ASSIGN A":"STRING TO A NUMERIC ARRAY. 'B' CONTAINS";:"A SUBSCRIPT THAT IS TOO LARGE, AND 'C'":"CONTAINS ONLY 1 SUBSCRIPT."JX20000::4:" FOR S`J<&MJ=JJJ@F 3 C @>) <]?J@* JJ<JJJ)JJ*J@@A f2*'&>J l@ u*z# `uuuuuuuuJumuumujnununuۭuumuuuumuumuu`"L u8uH ~n(s` d ֠ " INPUT A AND B AND USE A FOR-NEXT"::" LOOP: FOR N = A TO B."2:"2. WRITE A PROGRAM SIMILAR TO THE LAST"::" EXAMPLE, WHERE NUMBERS ARE INPUT AND"::" YOU USE THE OUTPUT TO GUESS WHAT"::" MATHEMATICAL FORMULA IS USED."2? ";XX$0Н(XX$,1,1)"Y"4100014(XX$,1,1)"N"4030061::(13);(4);"RUN HELLO"y1(:9:"PROGRAMMING EXERCISE 4":4:"DO ONE OR BOTH EXERCISES:"27:"1. WRITE A PROGRAM TO COMPUTE AND PRINT"::" THE SUM OF ALL NUMBERS FROM A TO B."::BAR";::" TO CONTINUE";0%N16384,128:16368,0:V0@:10:" DO YOU WISH TO REVIEW THIS"::" LESSON (YES OR NO)? ";XX$n0(XX$,1,1)"Y"ė:0(XX$,1,1)"N"400000l:10:" WOULD YOU LIKE A PROGRAMMING"::" EXERCISE (PLEASE TYPE YES OR NO)43000". 30000:40000/""THE 'N' IS THE NUMBER WHERE THE INDEX"::"STARTS, AND THE 'V' IS THE NUMBER"::"WHERE THE LOOP ENDS. THE DIFFERENCE"::"BETWEEN THE V-N WOULD BE THE NUMBER OF":/'40000/ N24:868:16368,0:7:"PRESS ";::"SPACE J^3"-@ " 120 NEXT J" .J " 130 END".T .^ M.h "FOR PROGRAM 2, YOUR RUN SHOULD LOOK LIKE THIS..."S.r Y.| t. "50 CUBED IS 125000". "55 CUBED IS 166357". "60 CUBED IS 216000". "65 CUBED IS 274625". "70 CUBED IS 3 THEN INPUT THE WORDS ONE AT A TIME."7-,20000:::- N24:868:16368,0:7:"PRESS ";::"SPACE BAR";::" TO CONTINUE";-%N16384,128:16368,0:I- "PROGRAM 2"-" -, " 100 FOR J=50 TO 70 STEP 5"-6 " 110 PRINT J;""CUBED IS"";N STATE CAPITALS. USE READ-DATA":,+" TO CREATE ARRAYS STATE$() AND CAP$().":" YOU WILL NEED TO COMPARE YOUR ANSWER"::" WITH THE STRING CAP$()."&-$,:"2. MODIFY THE SORT PROGRAM IN THE LESSON":" TO INPUT THE TOTAL NUMBER OF WORDS,"::" XERCISE (PLEASE TYPE YES OR NO)? ";XX$@+((XX$,1,1)"Y"11000[+)(XX$,1,1)"N"10300{+h)::(13);(4);"RUN HELLO"+*:9:"PROGRAMMING EXERCISE 6":4:"DO ONE OF THE FOLLOWING EXERCISES:"#,\+7:"1. WRITE A PROGRAM THAT WILL QUIZ YOU"::" O68:WRD$(R1)*J1800:"*?*FLAG1āI1700::1240O*255:20000*':10:" DO YOU WISH TO REVIEW THIS"::" LESSON (YES OR NO)? ";XX$*t'(XX$,1,1)"Y"ė::50*'(XX$,1,1)"N"10000&+<(:10:" WOULD YOU LIKE A PROGRAMMING"::" ESIMULATION."::"]";AN$:AN$"RUN"1220R):I15:"WRD$(";I;") = ";WRD$(I):Ie)I1800::20)FLAG0:R14:16:" R = ";R:WRD$(R)WRD$(R1)1255 *FLAG1:X$WRD$(R):WRD$(R)WRD$(R1):WRD$(R1)X$:16R:11:868:WRD$(R):17R:11:8=1), THEN"::"THE LIST WAS NOT IN ALPHABETICAL ORDER,"::"SO LINE 270 WILL REPEAT THE PROCESS.":255:20000(13:1:958:"ENTER 5 WORDS TO TEST THE SORT LOOP."(15:KM15:868:"WRD$(";KM;")";:WRD$(KM):KM()13:1:958:"TYPE 'RUN' FOR A (R). WRD$(R) IS THEN CHANGED TO"::"THE VALUE OF WRD$(R+1), AND WRD$(R+1)"::"IS GIVEN THE STRING AT X$.":20000'13:1:958:" THE LOOP IS EXECUTED 4 TIMES, IN ORDER":"TO TEST ALL ELEMENTS IN THE LIST. IF":m("ANY WORDS WERE EXCHANGED (FLAGNT 6,7;8;9":" C) PRINT ";(34);"6;7,8,9";(34)::"A,B OR C? ";KK$c! KK$"A"ĺ:"YES!":2540! KK$"B"KK$"C"2440! :"NO."! :"A IS THE ANSWER. B WILL PRINT THIS:"::6,7;8;9::"WHILE C PRINTS THE FOLLOWING:"::"6;7,8,9"! 2700K$"A"KK$"C"23005 L :"THAT'S NOT THE ANSWER."} ` :"B IS THE INCORRECT STATEMENT. IT HAS":"IMPROPER QUOTE MARKS." t 2700 3:958:"WHICH PRINT STATEMENT HAS THE FOLLOWING":"OUTPUT:"::6;7,8,9:F! " A) PRINT 6;7,8,9":" B) PRIL(I1)J:J2300,2440,2580Q5:958:"WHICH PRINT STATEMENT IS INCORRECT?": " A) 25 PRINT ";(34);"YOUR NAME?";(34):" B) 30 PRINT 'THE ANSWER IS'":" C) 50 PRINT 35"::"A, B OR C? ";KK$$ KK$"B"ĺ:"THAT'S RIGHT!":2400 8 K::"WILL PRINT LIKE THIS:"::15,30,143::"WITH A SEMICOLON,"::" 100 PRINT ";(34);"THE ANSWER=";(34);";63.5":" 200 END"::"THE OUTPUT WILL BE:"::"THE ANSWER=";63.520000I13:J(((5)3)1):JL(I)JL(I1)2260"::"TAB FIELDS BEGIN AT POSITIONS 1, 17,"::"AND 33."\::" A SEMICOLON WILL PRINT THE NEXT ITEM"::"IMMEDIATELY AFTER THE PREVIOUS ONE"::"WITH NO SPACES IN BETWEEN."p20000(:3:"FOR EXAMPLE,"::" 10 PRINT 15,30,143":" 15 END"H THE NUMERIC"::"CONSTANT 25 ON THE NEXT LINE."C 255::200004:2:" MORE THAN ONE ITEM CAN BE PRINTED ON"::"EACH LINE BY USING COMMAS OR SEMICOLONS.";8H::" A COMMA CAUSES THE ITEM FOLLOWING IT"::"TO BE PRINTED IN THE NEXT TAB FIELD.E EXECUTION OF THE"::"PROGRAM ABOVE. TYPE 'RUN' AFTER THE"::"PROMPT CHARACTER."|12:958:"]";JJ$:JJ$"RUN"2000255:"PROGRAMMING LESSON 2":25:"]":I1999:1 :" THE STRING ENCLOSED IN QUOTES IS"::"PRINTED ON ONE LINE, WITE COMMAND 'PRINT' WILL USE THE"::"PARAMETERS THAT FOLLOW TO PRINT"::"SOMETHING."_200003:1:958:"30 END":220:34,5::" THE 'END' STATEMENT CAUSES THE"::"COMPUTER TO STOP EXECUTION OF A PROGRAM."20000T:" LET'S SIMULATE TH1:"10 PRINT ";(34);"PROGRAMMING LESSON 2";(34):"20 PRINT 25"::D" EACH STATEMENT BEGINS WITH A LINE"::"NUMBER. LINE NUMBERS ARE OFTEN IN":X"INCREMENTS OF 10 TO LEAVE ROOM FOR THE"::"INSERTION OF NEW LINES AS NEEDED."Tl::" THS ARE"::"THE 'PRINT' AND 'END' STATEMENTS."::" THE 'PRINT' STATEMENT IS USED TO"::"PRINT CHARACTERS ON THE SCREEN."::" THE 'END' STATEMENT SIGNALS THE"::"END OF A PROGRAM."::" LET'S LOOK AT SOME EXAMPLES."20000G0:D NON-NUMERICALLY."Pd:"A NUMERIC CONSTANT IS A SET OF NUMERIC":"CHARACTERS TO BE TREATED NUMERICALLY.":"NUMERIC CONSTANTS ARE NOT ENCLOSED":"IN QUOTES."x:"NO.":1380:1340:1320:255-:4:" TWO COMMON BASIC INSTRUCTIONMERIC CONSTANT":" B) A STRING CONSTANT"L10:868:"TYPE A OR B? ";N$vN$"B"ĺ:"VERY GOOD! ":1340:1320N$"A"12401420(20000:I:1440<:"A STRING CONSTANT IS ANY SET OF":"CHARACTERS ENCLOSED IN QUOTES AND":"IS TREATE|JJJJ&'J&&3{>Ƚf|JJJJ&'J&&f{>ȥ&){>ȥ'){>|JJJ {>`*xY+&x'8*BIxix&&  x) +z z') +z z&д z+`FG8`0($ p,&"' x x x x`Hh` aI꽌ɪ򠚽ɭ&Yz&|&Yz&{z 꽌ɪ\8`&&꽌ɪɵ'*&%&,E'зЮ꽌ɪФ`2|JJJ'J&J{>Ƚ3B` wv` w6`2>&JJJ{ȱ>'JJJ3{ȱ>*JJJf{ȱ>J&*J&'J&&{ȱ>J&*J&'J{&*)|')3|*)f|>)|JJJ{`80|'x|&Hh & x x x x|Y{|'&Y{|x{ꪽ|ȑ @ Б = 3JAJ*J&6HwwwwwwwwwwwwJJJJx ww L]ww8wwwwwwwwv wwHvw wwwww w`ww ww wwww`x }(`(8`uwwuIw`IS ";(34);LL$(((1)8));(34)::" A) A NUMERIC CONSTANT":" B) A STRING CONSTANT"zt10:868:"TYPE A OR B? ";N$N$"B"ĺ:"THAT'S RIGHT! ":1340:1320N$"A"11401420*:5:"IS ";(34);((2)10000)100;(34)::" A) A NU3)3)1):JK980+KJ:K1020,1120,1220:5:"IS ";((3)10000)100::" A) A NUMERIC CONSTANT":" B) A STRING CONSTANT"10:868:"TYPE A OR B? ";N$$N$"A"ĺ:"YOU ARE CORRECT. ":1380:13208N$"B"1040L1420X`:5:"OTES."H20000Z\(1):14:" SOME EXAMPLES ARE:"::" ";(34);"TODAY IS SUNNY";(34)}p" ";(34);"JOHN SMITH";(34)" ";(34);"THE ANSWER IS...";(34)" ";(34);"+34.7";(34)I07:KK$:LL$(I)KK$:I:20000I15J((( 3:" II. STRING CONSTANTS:"::" A STRING CONSTANT, OFTEN":" REFERRED TO AS A LITERAL, IS ANY":" COMBINATION OF CHARACTERS TO BE"4" TREATED NON-NUMERICALLY."::" WITHIN A PROGRAM, STRING CONSTANTS":" ARE ENCLOSED IN QU NUMERIC CONSTANTS:"::" A NUMERIC CONSTANT IS ANY SET":" OF NUMERIC CHARACTERS INCLUDING A":" DECIMAL POINT AND SIGN (IF NEEDED)."200001:13:" SOME EXAMPLES ARE:"::" 392":" -159":" +15.3":" -150.183"20000 AND FROM RUN TO RUN.":::" THIS DEFINITION WILL BE CLEARER WHEN"::"YOU SEE SOME EXAMPLES."j20000:9:" THERE ARE TWO BROAD CATEGORIES"::"OF CONSTANTS:":::5:"1. NUMERIC CONSTANTS"::5:"2. STRING CONSTANTS"20000:3:" I. HE RESERVED WORDS 'PRINT' AND 'END', LET'S TAKE A LOOK AT WHAT IS MEANT BY CONSTANTS."hN20000X:5:" CONSTANTS ARE EITHER NUMBERS OR A"::"SEQUENCE OF CHARACTERS. THEIR VALUE"::"REMAINS UNCHANGED DURING THE RUN OF"_l:"THE PROGRAM 9.":20000::220:" RESERVED WORDS ARE THE COMMANDS FOR":0"THE COMPUTER.":20000::" THE PARAMETERS, WHEN USED, GIVE THE"::"COMPUTER ADDITIONAL INFORMATION TO"::"EXECUTE THE INSTRUCTION."D:255:20000]I:8:" BEFORE WE TALK ABOUT THE GENERAL FORMAT OF A BASIC"::"STATEMENT IS:":::1:"LINE NUMBER RESERVED WORD PARAMETERS";:: "EXAMPLE:"::" 20 PRINT ";(34);"HELLO";(34):34,14<15:" THE LINE NUMBER CAN BE ANY WHOLE"::"NUMBER FROM 1 TO 6399MING LANGUAGES. 'BASIC' IS THE"::"LANGUAGE USED BY MOST BEGINNING": "PROGRAMMERS. IT STANDS FOR ";::"B";::"EGINNER'S": :"A";::"LL-PURPOSE ";::"S";::"YMBOLIC ";::"I";::"NSTRUCTION ";::"C";::"ODE." 20000h :2:" T:"MORE SPECIFIC INSTRUCTIONS." |::" EACH LINE IS GIVEN A DIFFERENT"::"NUMBER. WHEN A PROGRAM IS 'RUN', THE"::"COMPUTER EXECUTES THE INSTRUCTIONS"::"IN NUMERIC ORDER." 20000G :7:" PROGRAMS CAN BE WRITTEN IN DIFFERENT"::"PROGRAMA SET OF"::"INSTRUCTIONS TO THE COMPUTER. YOU CAN"::"PERFORM DIFFERENT TASKS BY GIVING THE" @:"COMPUTER THE CORRECT INSTRUCTIONS TO"::"FOLLOW." T20000 h:5:" A COMPUTER PROGRAM IS MADE UP OF"::"LINES, EACH OF WHICH CONTAINS ONE OR":D OPERATORS" F20000 Zy d9:" THIS LESSON WILL ACQUAINT YOU WITH"::"THE CONCEPTS OF CONSTANTS, OPERATORS,": "AND PROGRAMMING.":: " LET'S START WITH PROGRAMMING.":20000` ,:11:"COMPUTER PROGRAMS":8:" A COMPUTER PROGRAM IS E.":2610:FF1:Y7 24:868:16368,0:7:"PRESS ";::"SPACE BAR";::" TO CONTINUE";w7 16384,128:16368,0::7" ::A0 PROGRAM: LRNBAS-25 LAST MOD: 9/12/81 SPLM2LL$(7):L(5):M(5)7 "HELLO","WHAT IS THIS?","JOHN SMITH","APPLE","CONSTANT","ABCDE","TYPE A OR B? ","THE ANSWER IS..." <::8:10:"PROGRAMMING LESSON 2":14:3:"CONSTANTS, PRINT, END, AN                 z#?     Ϡ"β²7ϱϠ ²7β²$Ϡ ӭNӭ2ӭ8ӭ3ӭ(ӭ4yxA?ooo}={{^o^k|sg_o>{}>_~np{p{~`{{aq{wxO8oJV[_{]n]v BH [q qh`Los s>pp}xO;w[o~{o?_}??X_{{@ww~_>?wvyx?o`}?_ututuututuuuusuL^ou-uIuuuu uu` o 4o r-u! o p8uuutut 7pLs (ku0+uBuCs r 7pLsu jHjH`LgsL{su0u jHjH` s luLs s q lH qhBLl pwst~s!klWlol*mmll9lmnm~s~sllll~s~sllll~s_js jnu jHjH`Lcs (kLs kuuuuu q^s_j isJ QjL_sLsstts Drstuuutuuut 7p o w :osutĺ T:(1023)123280F J1(16384)128:J10JJ1:J300275^ 16368,0:1023,123 16:1:"TYPE THE NUMBER OF THE PROGRAM YOU WANT.":"(IF YOU WANT DESCRIPTIONS, TYPE 'D'.) ";:868 16303,0 "490 ,ZN$"D"800 QZN Q0N$(N,4) sLL0M xT1N1:C04:N$(T,C)::(N$(T,0))LLLL(N$(T,0))o :N$(N,0)"END":LL18(LL2) 1:20(T$)2:T$ VV4(N9) 2:11:"AVAILABLE PROGRAMS":VV T1N:LL T10ĺ" "; T" "N$(T,0) N6T((N1)2) HELLOVERSION C-3.0;LAST MOD: 9/12/81 SPL AU(C) MECC 1980[ :f 22016xD$(13)(4):::255:(1023)123100:16302,0:::D$"BLOAD LOGO":16304,0:16368,02D$"NOMON CIO"dZM24 n:T$,N:NN1:    L-C. TO DO THIS, HOLD DOWN THE 'CTRL' KEY AND PRESS'C'.":" IF YOU WANT TO STOP THE PROGRAM WHEN TYPING IN A LINE OF INPUT, A SIMPLE CONTROL-C WILL NOT DO ANYTHING. IN THISCASE, YOU MUST HIT RETURN AFTER TYPING THE CONTROL-C."2830:K:" A 032 HELLO":I1100::"*I 021 PROGRAM-1":I1100::16152,0"*B 011 PICTURE":I1100::" T 004 NEW TEST"I1999::2830:11104:"CONTROL 'C'":>" TO STOP A PROGRAM WHILE IT IS LISTING OR RUNNING, ENTER A CONROT FILE IS USUALLY USED BY SOME OTHER PROGRAM.":2830::4:" THIS IS A SIMULATION OF WHAT HAPPENS WHEN YOU USE THE 'CATALOG' COMMAND.""TYPE 'CATALOG' AFTER THE ']' PROMPT."9:958:"]";A$:A$"CATALOG"147016151,0:I11000:IN MACHINE LANGUAGE. NOTE THAT THIS FILE IS ALSO LOCKED.":2830g8:" T 004 NEW TEST":34,11:138" THE 'T' INDICATES THAT 'NEW TEST' IS ATEXT FILE. THIS MEANS THAT INSTEAD OF HAVING A PROGRAM IN IT, 'NEW TEST' HAS SOME WORDS OR DATA. A TEX10:12" THE 'B' MEANS THAT THE FILE NAMED 'PICTURE' IS A BINARY FILE. A BINARY FILE IS NOT WRITTEN IN ANY LANGUAGE; RATHER, IT IS SIMPLY A BLOCK OF MEMORY SAVED ON DISK. THESE ARE NORMALLY USED"B"BY ADVANCED PROGRAMMERS WHO PROGRAM G TO BEPROGRAMMING."" THE 'I' AFTER THE STAR MEANS THAT THE PROGRAM IS WRITTEN IN 'INTEGER' BASIC. INTEGER BASIC IS SIMPLY ANOTHER VERSION OF BASIC THAT THE APPLE USES, THAT IS, IT IS JUST ANOTHER LANGUAGE."28308:"*B 011 PICTURE":34,E OF THE PROGRAM.":2830%220`8:8:" A 032 HELLO":8:"*I 021 PROGRAM-1":34,9:12" ON THE SECOND LINE, THE '*' TELLS US THAT THE PROGRAM IS LOCKED. THIS MEANS THAT YOU CAN'T CHANGE THAT PROGRAM. THIS ONLY MATTERS IF YOU ARE GOINHICH IS THE NAME OF THE BASIC LANGUAGE NORMALLY USEDBY THE APPLE."z" '032' IS THE LENGTH OF THE PROGRAM. THE NUMBER ITSELF IS ACTUALLY HOW MANY SECTORS OF SPACE IT USES UP ON THE DISK,BUT THAT IS NOT IMPORTANT."|" 'HELLO' IS SIMPLY THE NAMON THE DISKETTE, AND VARIOUS INFORMATION"d"ABOUT EACH FILE.":34,6:" FOR EXAMPLE, THE CATALOG ENTRY FOR A":"PROGRAM NAMED 'HELLO' MIGHT BE:"n10:8:" A 032 HELLO":12:" THE 'A' INDICATES THAT THE PROGRAM."Dx"IS WRITTEN IN APPLESOFT, W IS DEFINED WHEN YOU INITIALIZE A DISKETTE,"~ 3"AND IS USUALLY NAMED 'HELLO'. THIS IS CALLED 'BOOTING' THE SYSTEM." <:" THIS WILL ERASE ANY PROGRAM ALREADY INMEMORY." F2830:1110,Z4:"CATALOG"::" PRODUCES A LISTING OF THE FILES (A)A1$A02640' A1A131260- x (A)1370,1510,2220,2260,1580,1760,2310,1810,1320,1850,1920,1960,2460 (4:"PR#6"::2 2" LOADS THE DISK OPERATING SYSTEM (DOS) FROM THE DISKETTE AND RUNS THE GREETING PROGRAM. THE GREETING PROGRAM" " 8. NEW"" " 9. PR#6"2 "10. RUN"P "11. RUN (PROGRAMNAME)"o "12. SAVE (PROGRAMNAME)" "13. UNLOCK (PROGRAMNAME)" 21:958:"ENTER THE NUMBER OF THE COMMAND YOU"::"WANT DESCRIBED (TYPE 0 TO STOP)? ";A1$ A(A1$) ON SYSTEM"::"COMMANDS USED BY BEGINNING PROGRAMMERS"::"ARE:"F `Z j" 1. CATALOG"r t" 2. CONTROL 'C'" ~" 3. DELETE (PROGRAMNAME)" " 4. INIT (PROGRAMNAME)" " 5. LIST" " 6. LOAD (PROGRAMNAME)" " 7. LOCK (PROGRAMNAME)REQUEST." $2830q .9:" WHEN THE COMPUTER NEEDS INSTRUCTIONS"::"IT WILL GIVE YOU A PROMPT CHARACTER: ]." 8:"YOU MAY THEN TYPE IN ONE OF THE SYSTEM"::"COMMANDS." B2830 L SUBROUTINE OF SYSTEM COMMANDS @ V:"SOME OF THE MORE COMM/ PROGRAM: LRNBAS-17LAST UPDATE: 81/8/20 AWMy::8:10:"PROGRAMMING LESSON 1":14:12:"SYSTEM COMMANDS"283010 " THIS LESSON DESCRIBES THE SYSTEM"::"COMMANDS WHICH ARE USED BY THE COMPUTER"::"TO PROCESS A PROGRAMMING                           N THE NON-NUMERIC"::"VARIABLE 'NAME$'.":2000085:6" 'LET' IS USED AS AN ASSIGNMENT"::"STATEMENT. IT ASSIGNS A VARIABLE OR":8"OPERATION TO ANOTHER VARIABLE. IN A"::"PREVIOUS EXAMPLE, THE CONSTANT 5 WAS"::"STORED IN MEMORY LOCATION LINE NUMBER 100 WOULD PLACE THE VALUE"::"5 IN THE NUMERIC VARIABLE 'X'.":20000,:7:" 'LET' STATEMENTS ARE ALSO USED WITH"::"NON-NUMERIC VARIABLES:"0::9:"250 LET NAME$=";(34);"APPLE";(34)1200000215:1:" 'APPLE' IS STORED IEXT STEP IN OUR JOURNEY TO LEARN"::"TO PROGRAM IN 'BASIC' IS LEARNING TO"::"USE THE 'LET' AND 'INPUT' STATEMENTS."20000:7" A SIMPLE EXAMPLE OF A 'LET' STATEMENT"::"WOULD BE:":12"100 LET X=5"20000R"14:1:" B, OR C? ";Z$:Z$"A"Z$"B"Z$"C"194JZ$"A"ĺ:"CORRECT!":198^:"INCORRECT.":"THE ANSWER IS A. VARIABLE NAMES ARE":"ASSIGNED TO STORAGE LOCATIONS IN WHICH":"NUMBERS OR STRINGS CAN BE STORED."20000:Iv9:" THE N5:"WHAT IS A VARIABLE, ";V$;"?":" A) A QUANTITY THAT CAN BE CHANGED":" BY A PROGRAM WHILE IT IS":" RUNNING.":" B) A NUMBERED LINE IN A COMPUTER":" PROGRAM":" C) A STRING CONSTANT"+13:868:"TYPE A,"Z$"B"Z$"C"1842Z$"B"ĺ:"RIGHT!":188F:"NOT QUITE.":"B IS CORRECT. STRING VARIABLES MAY BE":"ANY VALID NUMERIC VARIABLE NAME (LETTERS";:"OR NUMBERS, BUT BEGINNING WITH A LETTER)";:"FOLLOWED BY A DOLLAR SIGN ($)."200!BLES MAY":"USE LETTERS OR NUMBERS, BUT MUST BEGIN":"WITH A LETTER."N2005:V$;", WHICH OF THE FOLLOWING IS A":"VALID STRING VARIABLE NAME?":" A) DF3":" B) APPLE$":" C) 3XY$"12:868:"TYPE A, B, OR C? ";Z$:Z$"A THESE IS":"A VALID NUMERIC VARIABLE NAME?"b:" A) 3B":" B) $X4":" C) X123"12:868:"TYPE A, B, OR C? ";Z$:Z$"A"Z$"B"Z$"C"174Z$"C"ĺ:"CORRECT!":178:"INCORRECT."E:"C IS THE ANSWER. NUMERIC VARIA3 APPLE"::" THEY ARE ILLEGAL BECAUSE THEY ARE NOT";:" LEGAL NUMERIC VARIABLES FOLLOWED BY A";:" DOLLAR SIGN ($)."20000I13:J(((7)3)1):JL(I)JL(I1)162L(I1)J:J170,180,190,5:"NOW, ";V$;", WHICH OFN ($). THE DOLLAR SIGN IS"d " USED TO IDENTIFY THE VARIABLE AS":" NON-NUMERIC.":20000 1:15:" SOME EXAMPLES ARE:"::" A$":" Z3$":" APPLE$":20000 3:" ILLEGAL STRING VARIABLE NAMES ARE:"::" 3$ $A 3A$ X BY ONE OR MORE LETTERS OR NUMBERS.":20000 x:2:" II. STRING VARIABLES NAMES:"::" STRING VARIABLES ARE USED TO STORE":" NON-NUMERIC VALUES." }:" IT CAN HAVE ANY VALID NUMERIC":" VARIABLE NAME FOLLOWED BY A DOLLAR":" SIG1:16:" SOME EXAMPLES ARE:"::" E":" APPLE":" T425":" R2":20000T i n3:" SOME ILLEGAL VARIABLE NAMES ARE:"::" 7Z 55 3R2 N4?8", s::" THEY ARE ILLEGAL BECAUSE THEY ARE":" NOT A LETTER OR A LETTER FOLLOWED":" .":y U" THE NAME CAN HAVE AT MOST 238":" CHARACTERS IN IT BUT THE COMPUTER":" READS ONLY THE FIRST TWO" Z" CHARACTERS. THE FIRST CHARACTER":" MUST BE A LETTER, BUT THE REST CAN":" BE LETTERS OR NUMBERS." _20000N dCHANGE VALUES WHILE A PROGRAM IS"::"RUNNING." F::" THERE ARE TWO TYPES OF VARIABLES:"::"NUMERIC VARIABLES AND STRING VARIABLES." K20000 P:2:" I. NUMERIC VARIABLE NAMES:" R:" NUMERIC VARIABLES ARE USED TO":" STORE NUMBERS6 PROGRAM: LRNBAS-3 6LAST UPDATE 81/8/19 AWM2::8:10:"PROGRAMMING LESSON 3":14:2:"VARIABLES, LET AND INPUT STATEMENTS":200005:1:12:"WHAT IS YOUR NAME? ";V$6V$""537:5/ <" A VARIABLE IS A QUANTITY THAT MAY"::"                  TION)":`:" THE (INSTRUCTION) IS PERFORMED ONLY"::"IF THE (EXPRESSION) IS TRUE.":20000p9:1:958"EXAMPLES"::"50 IF NUM = 100 THEN 160":"75 IF K < 0 THEN END":"90 IF L2$ = ";(34);"YES";(34);" THEN PRINT SQR"M16:" LINE 5MING CONTIUOUS":to"OPERATIONS AT COMPUTER SPEED. NEXT, WE"::"NEED TO FIND A WAY TO CONTROL THE LOOP.":20000r:2:" THE 'IF-THEN' STATEMENT HAS MANY USES,":"INCLUDING LOOP CONTROL. THE FORMAT IS:":|:"LN IF (EXPRESSION) THEN (INSTRUCGO TO LINE 60, SKIPPING THE":"LINES THAT SQUARE X5, AND ADDING 3 AT":"LINE 60. LINES 40 AND 50 ARE NOT USED":"IN THIS EXAMPLE.":20000m:8:" A LOOP THAT GOES ON FOREVER IS CALLED"::"AN INFINITE LOOP. THIS WILL SOLVE OUR"::"PROBLEM OF PERFORER.":" B) PRINT THE SQUARE OF THE INPUT.":" C) PRINT BOTH SQUARE AND SUM."h16:868:"WHICH ONE (A, B, OR C)? ";A2$::A2$"A"ĺ"CORRECT!!! ";:363iA2$"B"A2$"C"360j"NOT QUITE. ";k"THE ANSWER IS A. AT LINE":"30, WE 40 LET SQR = X5 * X5":" 50 PRINT ";(34);"THE SQUARE IS ";(34);";SQR"f" 60 LET Y5 = X5 + 3":" 70 PRINT ";(34);"THE ANSWER IS ";(34);";Y5":" 90 END"::"WHAT WOULD THIS PROGRAM DO?":Vg" A) ADD 3 TO ANY INPUT NUMBc"B IS CORRECT. THE PROGRAM":"WILL RUN AS USUAL UNTIL LINE 170. THE":"COMPUTER WILL THEN 'GO TO' LINE 115,":"AND START OVER FROM THERE.":20000:365Pe" 10 PRINT ";(34);"INPUT A NUMBER.";(34):" 20 INPUT X5":" 30 GOTO 60":" S ABOVE WILL REPEAT FOREVER?":z_" A) LINES 100 TO 200":" B) LINES 115 TO 170":" C) LINES 100 TO 170"`15:868:"YOUR ANSWER (A, B, OR C)? ";A1$:18:A1$"B"ĺ"VERY GOOD!! ";:355aA1$"A"A1$"C"352b"LOOK AGAIN. ";7]" 100 LET COUNT = 0":" 115 LET COUNT = COUNT + 1":" 120 PRINT ";(34);"INPUT A NAME";(34):" 140 INPUT NAME$"^" 160 PRINT ";(34);"GOOD MORNING, ";(34);";NAME$":" 170 GOTO 115":" 200 END":9:"WHICH LINEOTO 110', SO LINE 110 BEGINS TO":?T"EXECUTE AGAIN.":20000Y17:1:958:220:" WHEN LINE 140 IS REACHED THE SECOND":["TIME, 'NUM' BECOMES 3. 150 'GOES TO'"::"110, AND THE PROCESS CONTINUES FOREVER.":255:20000\:RD((3)2):RD35 120 PRINT ";(34);"THE NUMBER IS ";(34);"; NUM":" 130 PRINT ";(34);"THE SQUARE IS ";(34);"; SQR" @" 140 LET NUM = NUM + 1":" 150 GOTO 110":" 160 END""J20000:17:1:" LINE 140 ASSIGNS 2 TO 'NUM'. LINE 150":"SAYS 'GNES LONG?":20000m :" WHENEVER YOU NEED TO REPEAT THE SAME"::"LINES SEVERAL TIMES, YOU CAN USE THE": ""PROGRAMMING CONCEPT CALLED 'LOOPING.'"::"STUDY THE FOLLOWING EXAMPLE.": ," 100 LET NUM = 1":" 110 SQR = NUM * NUM"n 6" ;(34);"THE SQUARE IS ";(34);";SQR":" 130 END":20000 14:1:" NOW SUPPOSE YOU WISH TO COMPUTE THE"::"SQUARES OF ALL NUMBERS FROM 1 TO 100.": "HOW CAN YOU USE THE COMPUTER'S SPEED,"::"WITHOUT WRITING A PROGRAM HUNDREDS OF": "LIUPPOSE YOU WANT TO WRITE A PROGRAM"::"THAT COMPUTES THE SQUARE OF A NUMBER.": "YOUR PROGRAM MIGHT LOOK LIKE THIS:"::" 100 PRINT ";(34);"INPUT ANY NUMBER.";(34) " 110 INPUT NUM":" 120 SQR = NUM * NUM"< " 125 PRINT "ENT STATEMENTS. A WIDE VARIETY"::"OF TASKS CAN BE PERFORMED USING 'LET',": "'PRINT', AND 'INPUT'.":::" IN THIS LESSON, YOU WILL LEARN HOW THE" "'IF-THEN' AND 'GOTO' STATEMENTS CAN"::"EXPAND YOUR PROGRAMMING POWER.":20000P :1:" S0 PROGRAM: LRNBAS-4 6LAST MOD: 9/12/81 SPL::8:10:"PROGRAMMING LESSON 4":14:" LOOPS AND DECISIONS: GOTO AND IF-THEN"20000:4:" YOU ARE NOW ABLE TO PROGRAM USING"::"CONSTANTS, VARIABLES, OPERATORS AND":N "ASSIGNM                          IN 15,25 AT 10":13:15,2510:20000d90:21:24:958:"VLIN 10,20 AT 25":10,2025:255:2000090:22:1:958:"HLIN 15,25 AT 20":15,2520:255:2000090:22:24:958:"VLIN 10,20 AT 15":10,2015:255:20000D::9:" ONCE WE KNOW A VERTICAL LINE FROM X,Y1 TO"::"X,Y2. THE PARAMETERS MAY BE CONSTANTS,"::"VARIABLES, OR EXPRESSIONS."20000:::21:"COLOR= 2":2:"VLIN 0,39 AT 15":0,3915:2000022:20:958:90:"VLIN 32,37 AT 22":32,3722:255:20000$::21:"HLIS"9"IS LIKE USING MANY 'PLOT X,Y' COMMANDS.":20000y::21:"COLOR= 12":12:"HLIN 5,20 AT 12":5,2012:2000022:20:958:90:"HLIN 16,23 AT 30":16,2330:255:20000::8:" 'VLIN Y1,Y2 AT X' IS SIMILAR, EXCEPT":j"IT PLOTS 3:958:"PLOT ";(XK$);",";(YK$):20000:Kl::6:" THERE ARE TWO SPECIAL FUNCTIONS THAT"::"CAN BE HELPFUL IN USING GRAPHICS. THEY":v"ARE 'HLIN' AND 'VLIN'.":::" 'HLIN X1,X2 AT Y' WILL PLOT A"::"HORIZONTAL LINE FROM X1,Y TO X2,Y. THO 15.":530$(CO$):23:1:958&23:"X = ";XK$:(XK$)0(XK$)39((XK$))XK$Ģ23:5:" USE A NUMBER FROM 0 TO 39.":550023:10:"Y = ";YK$:(YK$)0(YK$)39((YK$))YK$Ģ23:14:" 0 TO 39, PLEASE":560,:(XK$),(YK$):2THE HORIZONTAL POSITION AND"::"Y IS THE VERTICAL POSITION. X AND Y"t:"MUST BE IN THE RANGE 0 TO 39.":20000:K14:21:"ENTER YOUR CHOICES AND SEE THE RESULTS." 22:868:"COLOR = ";CO$:(CO$)1(CO$)15ĺ"USE A NUMBER FROM 1 TTHE GRAPHICS"::"MODE, AND 'COLOR' SETS THE COLOR OF THE":"POINTS TO BE PLOTTED. BUT HOW ARE THE"::"POINTS ACTUALLY PLACED ON THE SCREEN?"::" FOR THIS, WE USE THE 'PLOT' COMMAND."::"THE FORMAT IS":F14:"PLOT X,Y"::"WHERE X IS ON THE SCREEN.":::" NOTE: 'GR' SETS THE COLOR TO BLACK"::"(COLOR=0).":20000s::21:"COLOR=":22:1:0;KT115:K1150::KT:KT8KT9ĺ" ";22:((0)2):KT;:3((KT8))6,39(0)1::20000<::2:" 'GR' IS USED TO ENTER THE":^"SCREEN. COLOR NUMBERS RANGE FROM 0"::"TO 15. 'COLOR=6', FOR EXAMPLE, SETS":"THE COLOR TO MEDIUM BLUE, WHILE 'COLOR"::"=15' SETS IT TO WHITE. THE 'COLOR'"::"COMMAND DOES NOT CHANGE THE COLOR OF":R"BLOCKS THAT ARE ALREADY :- |I1292:(I21):I,39:J135::U I2102:I1:I29,39:J135:: 21:"THE GRAPHICS SCREEN IS 40 BLOCKS ACROSS":"AND 40 BLOCKS DOWN." 20000::2:" THE 'COLOR' COMMAND WILL SET THE"::"COLOR OF BLOCKS TO BE PLOTTED ON AND SETS LOW RESOLUTION GRAPHICS.": J"IN THE GRAPHICS MODE, THERE ARE 4 LINES"::"AT THE BOTTOM OF THE SCREEN THAT CAN"::"STILL BE USED FOR NORMAL TEXT." ^20000 h: rI0282:(I21):0,I:J135:: wI1102:I:0,I29:J135:ARN TO USE"::"LOW RESOLUTION GRAPHICS ON THE APPLE": ,"COMPUTER. WHEN COMBINED WITH COMMANDS"::"YOU HAVE ALREADY LEARNED, COLOR GRAPHICS" 6"CAN BE BOTH INTERESTING AND FUN.":20000% @:6:" THE 'GR' COMMAND CLEARS THE SCREEN TO"::"BLACK27. 24,3017:24,2720:17,2024:17,2027P 24,3022:24,3025:23,2427r 27,2924:27,2930:24,3028 24,3031:31,3424:31,3430 36,3924:36,3927:36,3930:25,2636:28,2939 200007 "::6:" IN THIS LESSON, YOU WILL LE78:24,27147 8,1429:8,1432:10,1130:11,1231k 36,398:8,1036:36,3811:12,1339:36,3814 1:24,302:27,305:2,530:2,524:4,27 24,307:24,2710:7,1024:7,1027:10,30:9,29:8,28 24,3012:24,3015:12,1524:12,15&d PROGRAM: LRNBAS-55n LAST MOD: 9/12/81 SPL=x:V:6:8,144:4,714|9,1214:9,128:9,1211:8,14914,178:14,1711:14,1714:9,1014:12,131719,228:19,2211:19,2214:9,1019:12,1322 9,1324:9,1327:24,2                       WHICH"::"STATEMENT IS CORRECT?"::" A) LET K3(6,2) = ";(34);"3.5";(34):" B) INPUT K3(8,19)"::" C) LET K3(4) = 9"::" D) PRINT K3(11,X)"15:958:"WHICH ONE (A, B, C, OR D)? ";AN$:AN$"D"ĺ:"YOU ARE CORRECT! ";:550AN$"A"ͺ::"EXCELLENT CHOICE! ";:440CAN$"A"AN$"C"AN$"D"410b::"THAT'S NOT RIGHT. ";" B IS THE ANSWER. THE":"SUBSCRIPT OF AN ARRAY MAY BE A NUMERIC,"::"BUT NOT A STRING, EXPRESSION."600L3:"FOR AN ARRAY K3, DIM K3(15,5), 0",:KT((3)21):KT400,5004:"WHICH STATEMENT IS INCORRECT?"::" A) DIM Q(I+1,19)"::" B) INPUT KM(N$)"::" C) LET LV$(E) = ";(34);"JAMES SMITH";(34)::" D) PRINT MX$(22,4)"14:958:"WHICH ONE (A, B, C, OR D)? ";AN$:AN$"B"SEFUL. THINK OF THIS AS A"E:"TABLE WITH ROWS AND COLUMNS."::" MATRIX VARIABLE NAMES MUST HAVE 2"::"SUBSCRIPTS, SEPARATED BY A COMMA. FOR"::"EXAMPLE, 'INPUT NAME$(3,7)'. THE 'DIM'"::"COMMAND IS SIMILAR: 'DIM TABLE$(6,22)'." 2000M NUMBER OF LOCATIONS IN XX."::"THE COMPUTER WILL RESERVE SPACE IN":k"MEMORY FOR THE ARRAY.":20000:3:" NOW IMAGINE A TABLE OF STUDENT NAMES"::"AND COURSE GRADES. FOR THIS, A TWO-"::"DIMENSIONAL ARRAY, CALLED A MATRIX,"::"MIGHT BE UD TO PRINT ALL THE NAMES.":20000:4:" IF AN ARRAY IS TO CONTAIN MORE THAN"::"10 STORAGE LOCATIONS, YOU MUST WARN THE"::"COMPUTER. THE COMMAND FOR THIS IS:"::G15:"DIM XX(N)":::"IN WHICH THE ARRAY NAME IS XX, AND N IS"::"THE MAXIMU TO PRINT ANY DESIRED NAMES.":2000013:1:958:160:" 160 PRINT ";(34);"WHICH NUMBER?";(34):" 170 INPUT N":" 180 PRINT NM$(N)":255!::" THE NAME IS NOW ACCESSED BY INPUTTING"::"ITS CORRESPONDING NUMBER. A LOOP COULD"::"BE USE20 FOR I = 1 TO NS":" 130 PRINT ";(34);"STUDENT NAME?";(34)q" 140 INPUT NM$(I)":" 150 NEXT I"::$" THE FOR-NEXT LOOP WILL INPUT THE NAMES":"ONE BY ONE AND STORE THEM IN THE ARRAY"::"NAMED 'NM$'. A FEW MORE LINES CAN BE"::"ADDED"::"IS 'MARGE KOSEL'. A SUBSCRIPT CAN BE"::"ANY NUMERIC EXPRESSION.":20000:2:" NOW, YOU CAN USE A LOOP TO INPUT THE"::"NAMES. STUDY THIS PROGRAM SEGMENT:"::A" 100 PRINT ";(34);"NUMBER OF STUDENTS?";(34):" 110 INPUT NS":" 1ATE"::"VARIABLE IS THEN IDENTIFIED BY USING A"::"SUBSCRIPT ENCLOSED IN PARENTHESES.":20000 :220:I17:6:"NM$(";I;") = ";(34);:NM$:NM$;(34):::255P16:" IN THE STRING ARRAY NM$, THE FIRST"::"ELEMENT IS 'TODD BAILEY', WHILE NM$(5) LOOPING CONCEPT. SUBSCRIPTED"::"VARIABLES, OR ARRAYS, CAN DO JUST THAT.": :" AN ARRAY IS A COLLECTION OF VARIABLES"::"OF A PARTICULAR TYPE, EITHER STRING OR"::"NUMERIC. THE ENTIRE ARRAY IS GIVEN":_ "A SINGLE VARIABLE NAME. EACH SEPARVARIABLE FOR": n"EACH NAME: N1$, N2$, AND SO ON. THIS"::"SOLUTION IS OBVIOUSLY LENGTHY AND HAS"::"SOME PROBLEMS. TO PRINT THE NAMES, EACH" x"VARIABLE MUST BE LISTED SEPARATELY.":20000N :3:" THE BEST SOLUTION IS ONE THAT USES"::"THE Z:2:" SUPPOSE YOU WANT TO CREATE A LIST OF"::"NAMES OF ALL THE STUDENTS IN YOUR CLASS.":"FURTHERMORE, YOU MAY WANT TO PRINT ALL": d"OR SOME OF THE NAMES IN THE LIST.":::" HOW WOULD YOU DO THIS? ONE POSSIBLE"::"WAY IS TO USE A SEPARATE IN THIS LESSON, YOU WILL LEARN TO USE"::"SUBSCRIPTED VARIABLES, READ-DATA STATE-": P"MENTS, AND STRING OPERATIONS.":::" THESE FEATURES ALLOW FLEXIBILITY IN"::"HANDLING DATA AND STRINGS, AND WILL ADD"::"TO YOUR KNOWLEDGE OF BASIC.":200002 PROGRAM: LRNBAS-6 9LAST MOD: 9/12/81 SPL( TODD BAILEY,PHILIP BOUCHARD,CHARLES ERICKSON,MIKE FISH,MARGE KOSEL,TONY PROKOTT,ANN SARGEANT2::8:10:"PROGRAMMING LESSON 6":14:" DATA MANIPULATIONS AND STRINGS":20000W <:5:"                       o88`}~}A?~~gox?O}x~v_~{7_}??|p{{@|~?~~1wvwg?o@q_/w{}v[o>{~{}V{?|C>{m?_}~w?@~`?@_O~zog>{K/{~`A??~>{o7_ow[oOyE THIS WILL LEAVE"+ "" YOU WITH A BLANK"= ," DISKETTE."C 6nwOo?~?o?x?ocO}_ok{}>_{o_nn~{v{nn{{wn{O0?~}~}>?_qwlw`\o<>@ox?a@}xx}p~8_A??8o{;?o{~_}~.wvsw?o@G_Ow{}v[o>{}~{}f{?xx>{m?_mvw??`@?`@?W~v[k>w-w.{~?> x`\o_{wpg_X_nvW_{]_~nwoo|?o?x?o~_}pwx`?@{?|c@ooo}}`|a?l?~gOp>x`~n~{z{fn{{on{_ |~}>?_?|k{o;_ow[o_?~{ox? }xc}v[o~{o?_}??X_{{?ww~_>wv{w?o@_ow{}v[o>{}~{}v{?x?~>{m?_UvuG_@X~nx1{~?G wpO_X_lfW_{_>fwooq?o              oxG?G|}xWw[o~{o7_}??X_s;ww|_>?gv|_x?o~?~}?__y_@_8{~_ow{=w[o>{}~{}v{??~wp`}xxs~xXc?c>{o~_ow[k_{wwoO?w{nsox|?xO>n?_}xw|xA?ooo}@nnnnn{~n{ynnyw|g?|{oox?q?@}|?op~x`x?8ok=?o{z^>?Wt?~Ox?x|}}v_x`}??OO|O@_~{~_os{]w[o>{}~{}vy?k{m?_}vw?|x~0W]v[k6wmo.{~}>?y>x`ow[m_{wsownw_opq?xg~xA?oOoy]_{??oogO{}p>~>qqpnpqan`{qq{wqq`}Oox>?|}?~?xp~@|_>?7{ox?s}|q}v_~{o7_}??oo~o@_~{~_ou{mw[o>{~{}vz?g]{m?_}vw?~~~?~PO>zog>{k/{~}>?|>{o7ow[n_{wxo?~_|pn6|Xg]_cnw_opg?xw~xA?o/wu>o{{^o_k~s}_o>{>wg?|{_ox<@}~??|_Oox?g}xG}v_~{7_}??go?~o@|_ov{w[o>{~{}6{?p>{m?_}vw?ppx?X_~zoo>{k/?{~}>?~>{o7owoWz~ox_8onV;W[]_]nw_ox?|g?~xc?oox p|ao?lxg}_o]{>_sO{_qq~{nqan{`xq`yxA?ooo}={{^o^k|sg_o>{}>_~np{p{~`{{aq{wxO8oJV[_{]n]vox?>pp}xO;w[o~{o?_}??X_{{@ww~_>?wvyx?o`}?__`_@_~{~nw{}pA~~`w{?p_0G~~}>?]{o}_ow[g_{wgog?wox?o@?~n7@p>p`w{?x>{m?_9vs}xA?ooo}];?oogy{s_o>}>_~nnun{~n{{nn{w?~oxp67\_{]qcf,J):KK$""(KK$)302820_6 KK$"HELLO"KK$"PROGRAM-1"KK$"PICTURE"KK$"NEW TEST"FF1:}6 (KK$)65(KK$)9028206 I1(KK$):((KK$,I))4428206 I6 7 16:958:" THAT IS NOT A VALID NAME. RETYPE":" 'SAVE' WITH A VALID NAM"THE 'REM' STATEMENTS AND FOLLOW THEIR"5 :"INSTRUCTIONS. GOOD LUCK!":::"COPY THIS DOWN."::14:"]LOAD HELLO1":14:"]LIST"5 2830:::5 10:(13);(4);"RUN HELLO"5 5 J1:FF05 (JJ$,J,1)" "JJ1:J(JJ$)27506 KK$(JJ$RCISE (PLEASE TYPE YES OR NO)? ";M$;4Z (M$,1,1)"N"2720T4d (M$,1,1)"Y"2640z4n :2:9:"PROGRAMMING EXERCISE 1"4x :" TYPE 'LOAD HELLO1'. THIS WILL STORE"::"'HELLO1' IN MEMORY, WHERE YOU CAN"(5 :"LOOK AT IT BY TYPING 'LIST'. READ"::'HELLO' IS NOW UNLOCKED.")3( 2830:111032 :" NOTE: PROGRAM NAMES MAY BE UP TO 30 CHARACTERS LONG. ANY CHARACTERS EXCEPT A COMMAMAY BE USED IN THE NAME, BUT THE FIRST CHARACTER MUST BE A LETTER.":#4P :10:"WOULD YOU LIKE A PROGRAMMING"::"EXE1200:ZZP24:7:16368,0Q#P"PRESS ";::"SPACE BAR";::" TO CONTINUE";y(PZC(16384):ZC141ZC160205202P16368,0:7:868:21::ZV1:ZH1:205202P16368,0:7:868:21::ZV1:ZH1:THE COLOR GRAPHICS CAPABILITY"," OF THE APPLE COMPUTER."W@DATA AND STRINGS,LRNBAS-6J"DATA AND STRINGS - DESCRIBES THE 'READ'"," AND 'DATA' STATEMENTS, AND DEMON-"," STRATES SOME STRING OPERATIONS."P SPACE-BAR ROUTINE PZH(36):ZV(37):ZZNT.","")xLOOPS AND DECISIONS,LRNBAS-4"LOOPS AND DECISIONS - GIVES A LESSON ON"," THE 'GOTO', 'IF-THEN', AND 'FOR-NEXT'"," STATEMENTS, AND PROGRAM LOOPS."GRAPHICS AND ANIMATION,LRNBAS-58 "GRAPHICS AND ANIMATION - TEACHES THE"," USE OF .",""!PRINT AND END,LRNBAS-2"PRINT AND END - DESCRIBES THE 'PRINT'"," AND 'END' STATEMENTS, AND HOW TO USE"," THEM PROPERLY."VARIABLES AND ASSIGNMENTS,LRNBAS-3 "VARIABLES AND ASSIGNMENTS - DESCRIBES"," VARIABLES AND THE 'LET' STATEME4T1N1:(37)18İ20500:F9C24:N$(T,C)""N$(T,C)" "835V>N$(T,C):CfC:T:20500sH::200 INTRODUCTION TO APPLESOFT BASIC,6LSYSTEM COMMANDS,LRNBAS-1V "SYSTEM COMMANDS - GIVES DESCRIPTIONS"," OF THE SYSTEM COMMANDSRT THE NEW DISKETTE.":20500::7205 vVX$"N"610B ::255H a A(999)(1000)256w B(A)(A1)256 CS(B1)16:SLOT # CS1CS7CS6 (4)"PR#"CS  DESCRIPTIONS *:34,1: /14:"DESCRIPTIONS":34,4 2ZN$"D"ZN0:E ZM:"THAT IS NOT A NUMBER - TRY AGAIN";:550:500m ZM:868:CV1(CV23):ZN(ZN$): &CV1:36,CH:868: X: b10:1:"DO YOU WANT TO RUN ANOTHER"::"DISKETTE";:868:"? ";VX$:VX$(VX$,1)# lVX$"Y"ė:10:9:"INSEQN1470F 22:1:"PLEASE ENTER A NUMBER FROM 1 TO "N".":16:280S QN600y ::10:"GETTING THE PROGRAM..." 230,32:62450 D$;"RUN ";N$(Q,1) CH(36):CV(37) "";ZN$:(ZN$)(((ZN$)))520 (ZN$)0ZN$"0"540