home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / mbug / mbug044.arc / HANGMAN1.BAS < prev    next >
BASIC Source File  |  1979-12-31  |  6KB  |  185 lines

  1. 100 PRINT:PRINT:PRINT:PRINT "HELLO.  WHAT IS YOUR NAME";:INPUT N$
  2. 110 PRINT "HI ";N$;".  THIS IS THE GAME KNOWN AS HANGMAN. DO YOU KNOW"   
  3. 120 PRINT "HOW TO PLAY ";:INPUT Y$   
  4. 130 IF Y$="YES" THEN 210  
  5. 140 IF Y$ ="NO" THEN160   
  6. 150 PRINT "JUST A YES OR NO WILL DO JUST FINE HERE. ";:INPUT Y$:GOTO130   
  7. 160 PRINT "I THINK OF A WORD, AND YOU GUESS THE LETTERS IN THE WORD."
  8. 170 PRINT "YOU HAVE 10 GUESSES. IF YOU GUESS THE CORRECT WORD, YOU"  
  9. 180 PRINT "WIN.  IF NOT, YOU HANG.  CORRECT LETTER GUESSES WILL NOT AFFECT"  
  10. 190 PRINT "YOUR COUNTER.  YOU MAY SURRENDER AT ANY TIME BY TYPING IN AN" 
  11. 200 PRINT "ASTERISK (*). WE ARE NOW READY TO BEGIN." 
  12. 210 PRINT "THIS THE IS BEGINNING VOCABULARY GAME":PRINT:PRINT
  13. 220 DIM V(20)   
  14. 230 DIM B(20)   
  15. 240 DIMC$(20),G$(20),B$(40) 
  16. 250 DIM F(10),O$(10),Q$(20) 
  17. 260 DIM A(20),H(1)  
  18. 270 DIM W$(20)  
  19. 280 PRINT "LET'S PLAY HANGMAN." 
  20. 290 GOSUB 1450  
  21. 300 PRINT L$
  22. 310 W7$="IES"   
  23. 320 L7$="S."
  24. 330 H(0)=1  
  25. 340 RESTORE 
  26. 350 FOR I=1 TO 10: READ F(I):NEXT   
  27. 360 FOR I=1 TO 10: READ O$(I):NEXT  
  28. 370 READ N9 
  29. 380 LET N=0 
  30. 390 Q=0 
  31. 400 N2 = 0  
  32. 410 FOR J = 1 TO 20 
  33. 420 Q$(J) = " " 
  34. 430 NEXT J  
  35. 440 I=INT(N9*RND(1)+1)  
  36. 450 FOR J=1 TO I
  37. 460 READ A$ 
  38. 470 NEXT J 
  39. 480 A=LEN(A$)  
  40. 490 FOR I = 1 TO A 
  41. 500 G$(I)=MID$(A$,I,1) 
  42. 510 W$(I)=G$(I)
  43. 520 NEXT I 
  44. 530 A=LEN(A$)  
  45. 540 FOR J=1 TO 20  
  46. 550 C$(J)="-"  
  47. 560 NEXT J 
  48. 570 X=10   
  49. 580 N=1
  50. 590 N1=0   
  51. 600 REM DON"T PRINT GUESSES
  52. 610 IF Q=1 THEN 670   
  53. 620 PRINT "THE WORD IS ";  
  54. 630 FOR J=1 TO A   
  55. 640 PRINT C$(J);" ";   
  56. 650 NEXT J 
  57. 660 PRINT L$   
  58. 670 Q=0
  59. 680 PRINT "GUESS"; 
  60. 690 INPUT G1$  
  61. 700 IF G1$="*" THEN 1260   
  62. 710 IF G1$=A$ THEN 1240
  63. 720 FOR K=1 TO A   
  64. 730 IF G1$=G$(K) THEN 890 
  65. 740 NEXT K 
  66. 750 FOR L=1 TO N   
  67. 760 IF G1$><B$(L) THEN 790
  68. 770 PRINT "NO...YOU TRIED THIS BEFORE."
  69. 780 GOTO 810 
  70. 790 NEXT L 
  71. 800 PRINT "NO" 
  72. 810 X = X - 1  
  73. 820 N2 = N2 + 1
  74. 830 Q=1
  75. 840 Q$(F(N2))=O$(N2)   
  76. 850 IF X=0 THEN 1200   
  77. 860 GOSUB 1440 
  78. 870 GOSUB 1000 
  79. 880 GOTO 970 
  80. 890 PRINT "HEY, THAT""S RIGHT!!!!!"
  81. 900 FOR L=K TO A   
  82. 910 IF G$(L)><G1$ THEN 950
  83. 920 C$(L)=G1$  
  84. 930 G$(L)="=,$*):" 
  85. 940 N1=N1+1
  86. 950 NEXT L 
  87. 960 GOSUB 1000 
  88. 970 IF N1=A THEN 1240  
  89. 980 IF X=0 THEN 1200   
  90. 990 GOTO 600 
  91. 1000 V=LEN(G1$) 
  92. 1010 IF V<1 THEN 1140   
  93. 1020 N = N + 1  
  94. 1030 LET B(N)=ASC(G1$)  
  95. 1040 B$(N)=G1$  
  96. 1050 FOR I=1 TO N-1 
  97. 1060 IF B(N-I+1)>=B(N-I) THEN 1130  
  98. 1070 G1$=B$(N-I)
  99. 1080 B$(N-I)=B$(N-I+1)  
  100. 1090 B$(N-I+1)=G1$  
  101. 1100 A5=B(N-I)  
  102. 1110 B(N-I)=B(N-I+1)
  103. 1120 B(N-I+1)=A5
  104. 1130 NEXT I 
  105. 1140 PRINT "YOU HAVE USED ";
  106. 1150 FOR L=1 TO N   
  107. 1160 PRINT B$(L);   
  108. 1170 NEXT L 
  109. 1180 PRINT ". ";
  110. 1190 RETURN 
  111. 1200 PRINT "YOU HAVE BEEN HUNG!"
  112. 1210 L8=L8+1
  113. 1220 GOSUB 1440 
  114. 1230 GOTO 1260 
  115. 1240 PRINT "YOU WIN"
  116. 1250 W8=W8+1
  117. 1260 PRINT "THE WORD WAS "; 
  118. 1270 FOR J=1 TO A   
  119. 1280 PRINT W$(J);   
  120. 1290 NEXT J 
  121. 1300 REM
  122. 1310 PRINT:PRINT "DO YOU WANT TO TRY ANOTHER WORD ";N$;"."  
  123. 1320 INPUT T$   
  124. 1330 IF T$="YES" THEN 340   
  125. 1340 PRINT L$   
  126. 1350 IF W8<>1 THEN 1370 
  127. 1360 W7$="Y"
  128. 1370 IF L8<>1 THEN 1390 
  129. 1380 L7$="."
  130. 1390 PRINT "WELL ";N$;" YOU RETIRE WITH A RECORD OF";W8;"VICTOR";W7$;" AND";
  131. 1400 PRINT L8;"DEFEAT";L7$  
  132. 1410 IF W8>0 THEN 1420  
  133. 1420 PRINT "THANKS FOR PLAYING THE BEGINNING LEVEL OF HANGMAN." 
  134. 1430 END
  135. 1440 IF X>0 THEN 1570   
  136. 1450 PRINT "-----"  
  137. 1460 PRINT "I   I"  
  138. 1470 FOR I = 1 TO 4 
  139. 1480 PRINT "I ";
  140. 1490 FOR J = 1 TO 5 
  141. 1500 PRINT Q$(5*(I-1)+J);   
  142. 1510 NEXT J 
  143. 1520 PRINT L$   
  144. 1530 NEXT I 
  145. 1540 PRINT "I"  
  146. 1550 PRINT "--------"   
  147. 1560 RETURN 
  148. 1570 PRINT "YOU HAVE ";X;" MORE GUESSES."   
  149. 1580 RETURN 
  150. 1590 DATA 3,8,14,12,7,9,16,20,1,5   
  151. 1600 DATA "0","I","\","/","-","-","-","-","\","/"   
  152. 1610 DATA  180  
  153. 1620 DATA BATTLE,CATTLE,PENNY,SUDDEN,ARMY,CASTLE:   
  154. 1630 DATA SHELTER,WELCOME,BETWEEN,BUCKET,FINISH,STABLE: 
  155. 1640 DATA QUIET,IDEA,VIOLIN,USUAL,MAID,MAIN:
  156. 1650 DATA PAID,TRAIL,GATE,HATE,SAFE,SHADE:  
  157. 1660 DATA STATE,TRADE,WAVE,STAGE,GAY,NEIGHBOR:  
  158. 1670 DATA LAZY,PARADE,BEAT,CREAM,TEAM,DREAM:
  159. 1680 DATA LEAST,LEAD,LEAF,SPEAK,STREAM,CREEK:   
  160. 1690 DATA KNEE,SEEK,NIECE,SECRET,MACHINE,POLICE:
  161. 1700 DATA FLIGHT,JET,TOP,SUCKS,SHOOTS,GAS:  
  162. 1710 DATA YELLOW,AUNT,SNAIL,ODD,BLADES,PERSUADE:
  163. 1720 DATA LECTURE,FIGURE,CHUCKLE,TRAVEL,SLEEP,WHILE:
  164. 1730 DATA DEPEND,BERTH,PRIVATE,SCHOOL,SECTION,CUSHION:  
  165. 1740 DATA MATTRESS,PILLOW,SKILLFULL,GARDENIA,TRAIN,CONVERTIBLE: 
  166. 1750 DATA ROADSTER,CANVAS,ALASKA,FLAG,SOURDOUGH,BRILLIANT:  
  167. 1760 DATA LYNCH,XYLOPHONE,WHICH,CZAR,JAMB,JAZZ: 
  168. 1770 DATA QUIZ,FLY,WEPT,BRISK,ACRE,BANK:
  169. 1780 DATA LINK,DREW,STARRY,GRAVY,HARK,IRK:  
  170. 1790 DATA LARK,MILK,NASTY,ORANGE,SINK,TRAWL:
  171. 1800 DATA UNCLE,VAST,WAND,YAWN,DIFFICULTY,CAMP: 
  172. 1810 DATA COMPLICATE,DEDICATE,LAUGHTER,HEARTY,CLEVER,HARNESS:   
  173. 1820 DATA PRIMITIVE,SLEPT,HARMONICA,HARP,PIANO,CISTERN: 
  174. 1830 DATA COMMAND,OPPORTUNITY,LAP,CAN,WEPT,CREEP:   
  175. 1840 DATA PITY,TEXTURE,RAGGED,WRING,PNEUMONIA,HEM:  
  176. 1850 DATA MUMMY,DESPERATE,PATHETIC,FLING,SIMULTANEOUS,DIAMOND:  
  177. 1860 DATA FANCY,QUICK,DUCK,LIE,TEASPOON,WARP:   
  178. 1870 DATA VOWEL,LOCOMOTIVE,IT,FANCY,APOLOGY,CANNIBAL:   
  179. 1880 DATA LOWLY,LLAMA,TERRITORY,KANGAROO,ROTATE,TRACK:  
  180. 1890 DATA ALTER,LIVELY,CONGRATULATE,GENIUS,IDEA,BUSINESS:   
  181. 1900 DATA GIRAFFE,MAMMAL,HIPPOPOTAMUS,CATSUP,CACKLE,VACUUM: 
  182. 1910 DATA NECK,HANGMAN,LASER,FOOTBALL,TELEPHONE,ENVY:   
  183. S:   
  184. 1900 DATA GIRAFFE,MAMMAL,HIPPOPOTAMUS,CATSUP,CACKLE,VACUUM: 
  185. 1910 DATA NECK,HANGMAN,LASER,FOOTBALL,TELEPHONE,ENVY: