home *** CD-ROM | disk | FTP | other *** search
/ Explore the World of Soft…ids, Adults, Educational / RocelcoInc-ExploreTheWorldOfSoftware-KidsAdultsEducational-Vol2-Shareware.iso / educate / disk053 / nations.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1980-01-01  |  7.0 KB  |  197 lines

  1. 1   REM  NATIONS & CAPITALS
  2. 2   REM
  3. 3   REM  A WORLD GEOGRAPHY PROGRAM
  4. 4   REM
  5. 5   REM
  6. 6   REM  IBM MICROSOFT BASICA
  7. 8   REM  ADAPTED FROM APPLE SOFTSWAP
  8. 9   REM        
  9. 10   REM 
  10. 11   REM 
  11. 12   REM  ***********************
  12. 13   REM  *                     *
  13. 14   REM  *  SAN MATEO COUNTY   *
  14. 15   REM  * OFFICE OF EDUCATION *
  15. 16   REM  *         &           *
  16. 17   REM  *   COMPUTER-USING    *
  17. 18   REM  *      EDUCATORS      *
  18. 19   REM  *                     *
  19. 20   REM  *      SOFTSWAP       *
  20. 21   REM  *                     *
  21. 22   REM  *   333 MAIN STREET   *
  22. 23   REM  *     REDWOOD CITY    *
  23. 24   REM  *       CA 94063      *
  24. 25   REM  *    (415)363-5472    *
  25. 26   REM  *                     *
  26. 28   REM  *                     *
  27. 29   REM  ***********************
  28. 30   REM  *PROGRAM MAY BE COPIED*
  29. 31   REM  *FOR EDUCATIONAL USE &*
  30. 32   REM  *MAY NOT BE SOLD.COPY-*
  31. 33   REM  *  RIGHT 1983 CUE,INC *
  32. 34   REM  ***********************
  33. 100  SCREEN 0,1: WIDTH 40: COLOR 11,0,11: CLS
  34. 110   LOCATE 6,1: PRINT ":::****::: NATIONS & CAPITALS :::****:::"
  35. 120   DIM  A(114),B(4),C$(114),S$(114)
  36. 130   REM   READ IN NATION & CAPITAL ARRAYS
  37. 140   FOR  I = 1  TO  114
  38. 150   READ  S$(I), C$(I) :  NEXT  I
  39. 160   FOR  I = 1  TO  114 : A(I) = 0:  NEXT  I:G = 0:N = 0
  40. 170   LOCATE 12,3: PRINT "You have your choice of fill-in or": LOCATE 13,13: PRINT "multiple choice."
  41. 180   LOCATE 16,3: PRINT "Would you like to fill in answers?"
  42. 190   LOCATE 17,15: PRINT "<Y/N>=>";
  43. 200   Z$=INKEY$: IF Z$ = "" THEN 200
  44. 210  IF Z$="n" OR Z$="N" THEN GOTO 240
  45. 220   IF Z$ = "Y" OR Z$="y" THEN  CLS : GOTO 280
  46. 230  GOTO 200
  47. 240   CLS : LOCATE  3
  48. 250   LOCATE 5,3: PRINT "MULTIPLE CHOICE - Enter 1,2,3, or 4."
  49. 260  X = 1: LOCATE 6,16: PRINT "To stop, type 0 (ZERO)."
  50. 270   GOTO  300
  51. 280   CLS : LOCATE  5,4: PRINT "Fill-in. You must spell exactly!": LOCATE 6,8: PRINT "(Saint is abbreviated St.)"
  52. 290  X = 2:  LOCATE 7,15: PRINT "To stop, type S."
  53. 300   LOCATE 12,3: PRINT "You have your choice of whether the": LOCATE 13,8: PRINT "NATION or CAPITAL is asked."
  54. 310   PRINT 
  55. 320   LOCATE 16,3: PRINT "Would you like to answer with the": LOCATE 17,10: PRINT "CAPITAL? <Y/N>=>";
  56. 330   Z$=INKEY$: IF Z$ = "" THEN 330
  57. 340  IF Z$="n" OR Z$="N" THEN GOTO 380
  58. 350   IF Z$ = "Y" OR Z$="y" THEN Y = 1: GOTO 390
  59. 360   IF Z$ <  > "N" THEN 330
  60. 370  GOTO 330
  61. 380  Y = 2
  62. 390   PRINT 
  63. 400   REM  PICK A NATION
  64. 410   CLS : LOCATE  3
  65. 420   FOR  I = 1  TO  10
  66. 430  R =  INT ( RND (I) * 114) + 1
  67. 440   IF  A(R) <  > 2  THEN  500
  68. 450   NEXT  I
  69. 460   REM  DON'T WASTE TIME PICKING ONE
  70. 470   FOR  R = 1  TO  114
  71. 480   IF  A(R) <  > 2  THEN  500
  72. 490   NEXT  R:  GOTO  1170
  73. 500   IF  A(R) = 1  THEN   PRINT "Try this one again."
  74. 510   PRINT 
  75. 520   IF  X = 1  THEN  670
  76. 530   REM   THIS SECTION ASKS FOR FILL-IN ANSWERS
  77. 540   IF  Y = 2  THEN  590
  78. 550  A$ = C$(R):Z3$=A$:GOSUB 10000:A$=Z3$
  79. 560   LOCATE 8,5: COLOR 11,0: PRINT "What is the capital of ";S$(R);"?"
  80. 570   PRINT 
  81. 580   GOTO  620
  82. 590  A$ = S$(R):Z3$=A$:GOSUB 10000:A$=Z3$
  83. 600   LOCATE 8,5: COLOR 10,0: PRINT C$(R);" is the capital of ";
  84. 610   PRINT 
  85. 620   LOCATE 10,5: LINE INPUT  Z$:Z3$=Z$:GOSUB 10000:Z$=Z3$
  86. 630   PRINT 
  87. 640   IF Z$ = "S" THEN 1110
  88. 650   IF Z$ = A$ THEN  GOTO 1010
  89. 660   GOTO 1000
  90. 670   REM   THIS SECTION ASKS MULTIPLE CHOICE QUESTIONS
  91. 680   REM   THE VALUE4 OF C IS THE CORRECT ANSWER
  92. 690   CLS : LOCATE  3
  93. 700  C =  INT ( RND (I) * 4) + 1
  94. 710   REM  PICK FOUR NATIONS FOR THE CHOICE
  95. 720   FOR  I = 1  TO  4
  96. 730  B(I) =  INT ( RND (I) * 114) + 1
  97. 740   NEXT  I
  98. 750  B(C) = R
  99. 760   REM  MAKE SURE NONE ARE THE SAME
  100. 770   IF  B(1) = B(2)  OR  B(1) = B(3)  OR  B(1) = B(4)  THEN  720
  101. 780   IF  B(2) = B(3)  OR  B(2) = B(4)  OR  B(3) = B(4)  THEN  720
  102. 790   IF  Y = 2  THEN  890
  103. 800   REM  PRINT CAPITAL CHOICES
  104. 810   LOCATE 5,5: COLOR 13,0: PRINT "1. ";C$(B(1))
  105. 820   LOCATE 6,5: PRINT "2. ";C$(B(2))
  106. 830   LOCATE 7,5: PRINT "3. ";C$(B(3))
  107. 840   LOCATE 8,5: PRINT "4. ";C$(B(4))
  108. 860   LOCATE 11,5: PRINT  "The capital of ";S$(R);" is";
  109. 870  A$ = C$(B(C)):Z3$=A$:GOSUB 10000:A$=Z3$
  110. 880   GOTO  960
  111. 890   REM  PRINT NATION CHOICES
  112. 900   LOCATE 5,5: COLOR 14,0: PRINT "1. ";S$(B(1))
  113. 910   LOCATE 6,5: PRINT "2. ";S$(B(2))
  114. 920   LOCATE 7,5: PRINT "3. ";S$(B(3))
  115. 930   LOCATE 8,5: PRINT "4. ";S$(B(4))
  116. 940   LOCATE 12,5: PRINT C$(R);" is the capital of ";
  117. 950  A$ = S$(B(C)):Z3$=A$:GOSUB 10000:A$=Z3$
  118. 960   INPUT  Z4$:Z =  INT ( ABS (VAL(Z4$)))
  119. 970   IF  Z  <  1  OR  Z >  4  THEN  1110
  120. 980   IF  Z = C  THEN  1010
  121. 990   PRINT 
  122. 1000  A(R) = 1: LOCATE 16,5: PRINT "Wrong.":LOCATE 17,5: PRINT "The correct answer is ";A$;".": GOTO 1030
  123. 1010  A(R) = 2:N = N + 1
  124. 1020   LOCATE 16,5: PRINT "RIGHT!": LOCATE 17,5: PRINT "You have";N;"correct!"
  125. 1030   PRINT :G = G + 1 
  126. 1040   LOCATE  21,13: COLOR 1,0: PRINT "Press any key": LOCATE 22,11 :COLOR 4,0: PRINT "Press <ESC> to end"
  127. 1060  Z$=INKEY$: IF Z$="" THEN GOTO 1060
  128. 1070  IF Z$=CHR$(27) THEN GOTO 1100
  129. 1080  GOTO 400
  130. 1090   GOTO 1170
  131. 1100  CLS
  132. 1110  LOCATE 10,3: COLOR 4,0: PRINT "Do you want to stop? <Y/N>"
  133. 1120   Z$=INKEY$: IF Z$ = "" THEN 1120
  134. 1130   IF Z$ = "Y" OR Z$="y" THEN 1170
  135. 1140  IF Z$="n" OR Z$="N" THEN GOTO 400
  136. 1160  GOTO 1120
  137. 1170  CLS
  138. 1180  LOCATE 10,3: PRINT "You got";N;"RIGHT in";G;"guesses."
  139. 1190  LOCATE 15,3: PRINT "Would you like a different section?": LOCATE 16,18: PRINT "<Y/N>"
  140. 1200   Z$=INKEY$: IF Z$ = "" THEN 1200
  141. 1210   IF Z$ = "Y" OR Z$="y" THEN  RUN
  142. 1212  IF Z$="N" OR Z$="n" THEN GOTO 1220
  143. 1215  GOTO 1200
  144. 1220   LOCATE 18,3: PRINT "Is anyone else waiting to play? <Y/N>"
  145. 1230   Z$=INKEY$: IF Z$ = "" THEN 1230
  146. 1240   IF Z$ = "Y" OR Z$="y" THEN  RUN
  147. 1245  IF Z$="n" OR Z$="N" THEN GOTO 1250
  148. 1246  GOTO 1230
  149. 1250  LOCATE 21,13: PRINT "Loading menu..."
  150. 1260  CHAIN "menu",170: RUN
  151. 1270  DATA Afghanistan,Kabul,Albania,Tirana,Algeria,Algiers
  152. 1280  DATA Angola,Luanda,Argentina,Buenos Aires,Australia,Canberra
  153. 1290  DATA Austria,Vienna,The Bahamas,Nassau,Bangladesh,Dacca
  154. 1300  DATA Barbados,Bridgetown,Belgium,Brussels,Bolivia,Sucre
  155. 1310  DATA Botswana,Gaborone,Brazil,Brasilia,Bulgaria,Sofia
  156. 1320  DATA Burma,Rangoon,Cambodia,Phnom Penh,Canada,Ottawa
  157. 1330  DATA Chile,Santiago,People's Republic of China,Peking
  158. 1340  DATA Republic of China,Taipei,Colombia,Bogota,Costa Rica,San Jose
  159. 1350  DATA Cuba,Havana,Cyprus,Nicosia,Czechoslovakia,Prague
  160. 1360  DATA Denmark,Copenhagen,Dominican Republic,Santo Domingo
  161. 1370  DATA Ecuador,Quito,Egypt,Cairo,El Salvador,San Salvador
  162. 1380  DATA Ethiopia,Addis Ababa,Fiji,Suva,Finland,Helsinki
  163. 1390  DATA France,Paris,Germany,Berlin,Ghana,Accra,Greece,Athens
  164. 1400  DATA Guatemala,Guatemala City,Haiti,"Port-au-Prince",Honduras,Tegucigalpa
  165. 1410  DATA Hungary,Budapest,Iceland,Reykjavik,India,New Delhi
  166. 1420  DATA Indonesia,Jakarta,Iran,Tehran,Iraq,Baghdad
  167. 1430  DATA Ireland,Dublin,Israel,Jerusalem,Italy,Rome
  168. 1440  DATA Jamaica,Kingston,Japan,Tokyo,Jordon,Amman,Kenya,Nairobi
  169. 1450  DATA South Korea,Seoul,Kuwait,Kuwait City,Laos,Vientiane
  170. 1460  DATA Lebanon,Beirut,Liberia,Monrovia,Libya,Tripoli
  171. 1470  DATA Liechtenstein,Vaduz,Madagascar,Tananarive,Malaysia,Kuala Lumpur
  172. 1480  DATA Mali,Bamako,Malta,Valetta,Mauritania,Nouakchott
  173. 1490  DATA Mexico,Mexico City,Mongolia,Ulan Bator,Morocco,Rabat
  174. 1500  DATA Mozambique,Maputo,Nepal,Katmandu,The Netherlands,Amsterdam
  175. 1510  DATA New Zealand,Wellington,Nicaragua,Managua,Niger,Niamey
  176. 1520  DATA Nigeria,Lagos,Norway,Oslo,Oman,Muscat,Pakistan,Islambad
  177. 1530  DATA Panama,Panama,Paraguay,Asuncion,Peru,Lima
  178. 1540  DATA Philippines,Quezon City,Poland,Warsaw,Portugal,Lisbon
  179. 1550  DATA Rhodesia,Salisbury,Romania,Bucharest,Saudi Arabia,Riyadh
  180. 1560  DATA Senegal,Dakar,Sierra Leone,Freetown,Somalia,Mogadishu
  181. 1570  DATA Republic of South Africa,Pretoria and Cape Town,Spain,Madrid
  182. 1580  DATA Sri Lanka,Colombo,Sudan,Khartoum,Sweden,Stockholm
  183. 1590  DATA Switzerland,Bern,Syria,Damascus,Tanzania,Dar es Salaam
  184. 1600  DATA Thailand,Bangkok,Togo,Lome,Tonga,Nukualofa
  185. 1610  DATA Trinidad and Tobago,Port of Spain,Tunisia,Tunis,Turkey,Ankara
  186. 1620  DATA Uganda,Kampala,"Russia (USSR)",Moscow,United Arab Emirates,Abu Dhabi
  187. 1630  DATA United Kingdom,England,Uruguay,Montevideo,Venezuela,Caracas
  188. 1640  DATA Vietnam,Hanoi,Yugoslavia,Belgrade,Zaire,Kinshasa,Zambia,Lusaka
  189. 10000  REM
  190. 10010  Z2$="":FOR VI=1 TO LEN(Z3$)
  191. 10020  Z1 =ASC(MID$(Z3$,VI,1))
  192. 10030  IF Z1>96 AND Z1 < 123 THEN Z2$=Z2$+CHR$(Z1-32):GOTO 10050
  193. 10040  Z2$=Z2$+CHR$(Z1)
  194. 10050  NEXT VI
  195. 10060  Z3$=Z2$
  196. 10070  RETURN
  197.