home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C128Educational / S-P-C (.txt) < prev    next >
Commodore BASIC  |  2019-04-13  |  6KB  |  181 lines

  1. 10 REM STATES, PROVIDENCES & CAPITALS  1984
  2. 20 REM
  3. 30 REM PRACTICE IN MATCHING IN STATES AND CAPITALS (AND CANANADIAN PROVIDENCES)
  4. 40 REM
  5. 50 REM
  6. 60 REM COMMMODORE 128, BASIC 7.0    80-COLUMN MONITOR    5 1/2 K
  7. 70 REM
  8. 80 PRINT "[147]"   :W=3:Q=5:GOSUB 1760
  9. 90 PRINT"*************  STATES, PROVINCES AND CAPITALS ************"
  10. 100 DIM A(62),B(4),C$(62),S$(62)
  11. 110 REM READ IN STATES AND CAPITAL  ARRAYS
  12. 120 FOR I=1 TO 62
  13. 130 READ S$(I),C$(I):NEXT I
  14. 140 FOR I=1 TO 62:A(I)=0:NEXT I:G=0:N=0
  15. 150 FOR I=1 TO 1000:NEXT I
  16. 160 PRINT"[147]":W=1:Q=1:GOSUB 1760
  17. 170 PRINT:PRINT"YOU HAVE YOUR CHOICE OF TAKING A FILL IN OR A ":PRINT "MULTIPLE CHOICE TEST"
  18. 180 PRINT
  19. 190 PRINT"WOULD YOU LIKE TO FILL IN THE ANSWERS?"
  20. 200 PRINT"(Y FOR 'YES', N FOR 'NO') "
  21. 210 GET Z$:IF Z$="" THEN 210
  22. 220 IF Z$="Y" THEN PRINT:GOTO 300
  23. 230 IF Z$<>"N" THEN PRINT:GOTO 160
  24. 240 PRINT:PRINT
  25. 250 PRINT"MULTIPLE CHOICE -- ANSWER EACH QUESTION WITH 1,2,3 OR 4"
  26. 260 PRINT
  27. 270 X=1:PRINT"TO STOP, TYPE 0 (ZERO) FOR YUR ANSWER"
  28. 280 GOTO 330
  29. 290 PRINT
  30. 300 PRINT:PRINT"FOR FILL-INS, YOU MUST SPELL EXACTLY! (SAINT IS ":PRINT"ABBREVIATED ST.)"
  31. 310 PRINT
  32. 320 X=2:PRINT"TO STOP, TYPE 'S' FOR YOUR ANSWER"
  33. 330 PRINT
  34. 340 PRINT"YOU HAVE YOUR CHOICE OF WHETHER THE STATE/PROVINCE OR CAPITAL IS ASKED"
  35. 350 PRINT
  36. 360 PRINT"WOULD YOU LIKE TO ANSWER WITH THE CAPITAL?[160](Y OR N)"
  37. 370 GET Z$:IF Z$="" THEN 370
  38. 380 IF Z$="Y" THEN Y=1:GOTO 410
  39. 390 IF Z$<>"N" THEN 370
  40. 400 Y=2
  41. 410 PRINT
  42. 420 REM PICK A STATE
  43. 430 PRINT"[147]":Q=1:W=1:GOSUB 1760
  44. 440 FOR I=1 TO 10
  45. 450 R=INT(RND(1)*62 +1)
  46. 460 IF A(R)<>2 THEN 520
  47. 470 NEXT I
  48. 480 REM DON'T WASTE TIME PICKING ONE
  49. 490 FOR R=1 TO 62
  50. 500 IF A(R)<>2 THEN 520
  51. 510 NEXT R:GOTO 1220
  52. 520 IF A(R)=1 THEN PRINT"TRY THIS ONE AGAIN."
  53. 530 PRINT
  54. 540 FOR MM=1 TO 700:NEXT MM
  55. 550 IF X=1 THEN 700
  56. 560 REM THIS SECTION ASKS FOR FILL-IN ANSWERS
  57. 570 IF Y=2 THEN 630
  58. 580 A$=C$(R)
  59. 590 PRINT"[147]":Q=1:W=1:GOSUB 1760
  60. 600 PRINT"WHAT IS THE CAPITAL OF ";S$(R);
  61. 610 PRINT
  62. 620 GOTO 650
  63. 630 A$=S$(R)
  64. 640 PRINTC$(R);" IS THE CAPITAL OF ";
  65. 650 INPUT Z$
  66. 660 PRINT
  67. 670 IF LEN (Z$)=1 THEN 1160
  68. 680 IF Z$=A$ THEN GOTO 1050
  69. 690 GOTO 1040
  70. 700 REM THIS SECTION ASKS MULTIPLE CHOICE QUESTIONS
  71. 710 REM THE VALUE 4 OF C IS THE CORRECT ONE
  72. 720 PRINT"[147]":Q=1:W=1:GOSUB 1760
  73. 730 C=INT(RND(1)*4+1)
  74. 740 REM PICK FOUR STATES OR PROVINCES FOR THE CHOICES
  75. 750 FOR I=1 TO 4
  76. 760 B(I) = INT(RND(1)*50+1)
  77. 770 NEXT I
  78. 780 B(C)=R
  79. 790 REM MAKE SURE NONE ARE THE SAME
  80. 800 IF B(1)=B(2) OR B(1)=B(3) OR B(1)=B(4) THEN 750
  81. 810 IF B(2)=B(3) OR B(3)=B(4) OR B(2)=B(4) THEN 750
  82. 820 IF Y=2 THEN 920
  83. 830 REM PRINT CAPITAL CHOICES
  84. 840 PRINT"1, ";C$(B(1))
  85. 850 PRINT"2, ";C$(B(2))
  86. 860 PRINT"3, ";C$(B(3))
  87. 870 PRINT"4, ";C$(B(4))
  88. 880 PRINT
  89. 890 PRINT"THE CAPITAL OF ";S$(R); " IS ";
  90. 900 A$=C$(B(C))
  91. 910 GOTO 1000
  92. 920 REM PRINT STATE OR PROVIDENCE CHOICES
  93. 930 PRINT"1, ";S$(B(1))
  94. 940 PRINT"2, ";S$(B(2))
  95. 950 PRINT"3, ";S$(B(3))
  96. 960 PRINT"4, ";S$(B(4))
  97. 970 PRINT
  98. 980 A$=S$(B(C))
  99. 990 PRINT C$(R); " IS THE CAPITAL OF ";
  100. 1000 INPUT Z:Z=INT(ABS(Z))
  101. 1010 IF Z<1 OR Z>4 THEN 1160
  102. 1020 IF Z=C THEN 1050
  103. 1030 PRINT
  104. 1040 A(R)=1:PRINT"WRONG...THE ANSWER IS ";A$:GOTO 1080
  105. 1050 A(R)=2:N=N+1
  106. 1060 PRINT
  107. 1070 PRINT"RIGHT!     YOU HAVE ";N;" CORRECT."
  108. 1080 PRINT:G=G+1
  109. 1090 W=15:Q=1:GOSUB 1760:PRINT"PRESS <RETURN> TO CONTINUE......OR '0' TO END PROGRAM=>"
  110. 1100 GET Z2$:IF Z2$="" THEN 1100
  111. 1110 IF ASC(Z2$)= 48 THEN 1150
  112. 1120 IF ASC(Z2$)<>13 THEN GOTO 420
  113. 1130 IF N<62  THEN GOTO 420
  114. 1140 IF N=62 THEN 1220
  115. 1150 PRINT"[147]":Q=1:W=1:GOSUB 1760
  116. 1160 PRINT"DO YOU WANT TO STOP?[160](Y OR N)"
  117. 1170 GET Z$:IF Z$="" THEN 1170
  118. 1180 IF Z$="Y" THEN 1220
  119. 1190 IF Z$<>"N" THEN 1150
  120. 1200 PRINT
  121. 1210 GOTO 1130
  122. 1220 PRINT"[147]":Q=1:W=1:GOSUB 1760
  123. 1230 PRINT"YOU GOT ";N;" RIGHT IN ";G;" GUESSES"
  124. 1240 PRINT
  125. 1250 ANS=INT (N/G*100+.5)
  126. 1260 PRINT"THAT IS ";ANS;"%--";:IF ANS>95 THEN PRINT"EXCELLENT"
  127. 1270 IF ANS>80 AND ANS<96 THEN PRINT"GOOD"
  128. 1280 IF ANS>75 AND ANS<81 THEN PRINT"YOU DID ALL RIGHT"
  129. 1290 IF ANS<76 AND ANS>64 THEN PRINT"THERE'S A LOT OF ROOM FOR IMPROVEMENT."
  130. 1300 IF ANS<65 THEN PRINT"THAT ISN'T GOOD AT ALL. YOU OUGHT TO TRY AGAIN."
  131. 1310 PRINT
  132. 1320 PRINT"WOULD YOU LIKE TO TRY THE OTHER SECTION?"
  133. 1330 PRINT
  134. 1340 PRINT"(Y FOR YES  OR N FOR NO)=>";
  135. 1350 GET Z$:IF Z$="" THEN 1350
  136. 1360 IF Z$="Y" THEN RUN
  137. 1370 IF Z$<>"N" THEN 1350
  138. 1380 PRINT
  139. 1390 PRINT:PRINT"IS ANYONE ELSE WAITING    (Y OR N) ==>";
  140. 1400 GET Z$:IF Z$="" THEN 1400
  141. 1410 IF Z$="Y" THEN RUN
  142. 1420 IF Z$<>"N" THEN 1400
  143. 1430 PRINT"[147]":W=13:Q=16:GOSUB 1760:PRINT"* * *  G O O D  B Y E  * * *"
  144. 1440 PRINT
  145. 1450 DATA "ALABAMA","MONTGOMERY","ALASKA","JUNEAU","ARIZONA"
  146. 1460 DATA "PHOENIX","ARKANSAS","LITTLE ROCK","CALIFORNIA"
  147. 1470 DATA "SACRAMENTO","COLORADO","DENVER","CONNECTICUT","HARTFORD"
  148. 1480 DATA "DELAWARE","DOVER","FLORIDA","TALLAHASSEE","GEORGIA"
  149. 1490 DATA "ATLANTA","HAWAII","HONOLULU","IDAHO","BOISE","ILLINOIS"
  150. 1500 DATA "SPRINGFIELD","INDIANA","INDIANAPOLIS","IOWA"
  151. 1510 DATA"DES MOINES","KANSAS","TOPEKA","KENTUCKY","FRANKFORT"
  152. 1520 DATA "LOUISIANA","BATON ROUGE","MAINE","AUGUSTA","MARYLAND"
  153. 1530 DATA"ANNAPOLIS","MASSACHUSETTS","BOSTON","MICHIGAN"
  154. 1540 DATA "LANSING","MINNESOTA","ST. PAUL","MISSISSIPPI","JACKSON"
  155. 1550 DATA "MISSOURI","JEFFERSON CITY","MONTANA","HELENA","NEBRASKA"
  156. 1560 DATA "LINCOLN","NEVADA","CARSON CITY","NEW HAMPSHIRE"
  157. 1570 DATA "CONCORD","NEW JERSEY","TRENTON","NEW MEXICO","SANTA FE"
  158. 1580 DATA "NEW YORK","ALBANY","NORTH CAROLINA","RALEIGH"
  159. 1590 DATA "NORTH DAKOTA","BISMARK","OHIO","COLUMBUS","OKLAHOMA"
  160. 1600 DATA "OKLAHOMA CITY","OREGON","SALEM","PENNSYLVANIA"
  161. 1610 DATA "HARRISBURG","RHODE ISLAND","PROVIDENCE","SOUTH CAROLINA"
  162. 1620 DATA "COLUMBIA","SOUTH DAKOTA","PIERRE","TENNESSEE"
  163. 1630 DATA "NASHVILLE","TEXAS","AUSTIN","UTAH","SALT LAKE CITY"
  164. 1640 DATA "VERMONT","MONTPELIER","VIRGINIA","RICHMOND","WASHINGTON"
  165. 1650 DATA "OLYMPIA","WEST VIRGINIA","CHARLESTON","WISCONSIN","MADISON"
  166. 1660 DATA "WYOMING","CHEYENNE"
  167. 1670 DATA "ALBERTA","EDMONTON","BRITISH COLUMBIA","VICTORIA","MANITOBA"
  168. 1680 DATA "WINNIPEG","NEW BRUNSWICK","FREDERICTON","NEWFOUNDLAND","ST. JOHN'S"
  169. 1690 DATA "NOVA SCOTIA","HALIFAX","ONTARIO","TORONTO","PRINCE EDWARD ISLAND"
  170. 1700 DATA "CHARLOTTETOWN","QUEBEC","QUEBEC","SASKATCHEWAN","REGINA"
  171. 1710 DATA "NORTHWEST TERRITORIES","YELLOWKNIFE"
  172. 1720 DATA "YUKON TERRITORIES","YELLOWKNIFE"
  173. 1730 PRINT:PRINT"           PRESS <RUN/STOP> TO RETURN TO BASIC"
  174. 1740 GOTO 1740
  175. 1750 END
  176. 1760 REM W=DOWN AND Q=ACROSS
  177. 1770 REM SUBROUTINE FOR TEXT LOCATION.................
  178. 1780 PRINT"":FOR L1=1 TO W-2:PRINT:NEXT:PRINT;
  179. 1790 IF Q>2 THEN PRINT "" TAB(Q-1)"";
  180. 1800 RETURN
  181.