10  COM Z$[7],S$[2],L
20  REM *****JUMBLE-SCRAMBLED WORDS*****
30  REM   JUMBLE: RANDOLPH WONG  ;3/8/74
40  REM      ACKNOWLEDGMENTS: LHS, BERKELEY; EJM, WWHS EDPRC
50  REM            REVISED: TIMM BENTLEY;1/17/77; (2000F ACCESS)
60  L=10
70  Z$="*JUMBLE"
80  DIM A$[72],B$[72],C$[72],D$[72],E$[72]
90  DIM F$[72]
100  LET T0=255
110  ENTER #P
120  IF TIM(1)>11 THEN 150
130  PRINT "GOOD MORNING, ";
140  GOTO 190
150  IF TIM(1)>15 THEN 180
160  PRINT "GOOD AFTERNOON, ";
170  GOTO 190
180  PRINT "GOOD EVENING, ";
190  PRINT "WELCOME TO JUMBLE (BAGELS STYLE)!"
200  PRINT '10"WHAT IS YOUR NAME";
210  INPUT F$
220  PRINT '10"WOULD YOU LIKE INSTRUCTIONS, "F$" (YES OR NO)";
230  INPUT A$
240  IF A$[1,1] <> "Y" THEN 380
250  PRINT "IN THIS GAME YOU TRY TO GUESS THE WORD WHICH I HAVE IN MIND."
260  PRINT '10"THE WORD IS HIDDEN IN THE JUMBLED GROUP OF LETTERS WHICH I"
270  PRINT "WILL GIVE TO YOU."'10
280  PRINT "I, THE COMPUTER, WILL USE THE FOLLOWING CLUES:"'10
290  PRINT "     '#' WRONG  :: = '#' CHARACTERS IN THE WRONG PLACE"
300  PRINT "     '#' RIGHT  :: = '#' CHARACTERS IN THE RIGHT PLACE"
310  PRINT '10'10'10"         EXAMPLE:    3 RIGHT  4 WRONG"
320  PRINT "           MEANS:    3 CHARACTERS ARE IN THE RIGHT PLACE"
330  PRINT "             AND:    4 CHARACTERS ARE IN THE WRONG PLACE"
340  PRINT '10"     I HAVE THREE LEVELS OF WORDS:"
350  PRINT '10"          LEVEL 1:       BEGINNERS"
360  PRINT "          LEVEL 2:       INTERMEDIATE"
370  PRINT "          LEVEL 3:       ADVANCED"
380  RESTORE 380
390  DATA "GRASSHOPPER","DISCIPLE","CATERPILLAR","SAPLING","SNOWFLAKE"
400  DATA "ANGEL","DUCKLING"
410  DATA "HLT"
420  FOR I=1 TO RND(P)*7+1
430  READ A$
440  NEXT I
450  DEF FNA()=1+*SGN(R-)
460  PRINT '10'10"WHICH LEVEL DO YOU WANT(1,2, OR 3)";
470  INPUT Z
480  GOTO Z OF 490,510,530
490  RESTORE 1420
500  GOTO 540
510  RESTORE 1500
520  GOTO 540
530  RESTORE 1630
540  PRINT "AND NOW, MY YOUNG ";
550  PRINT A$" LET'S BEGIN"
560  REM***COUNT THE NUMBER OF JUMBLE DATA IN STOCK***
570  LET C=-1
580  LET C=C+1
590  READ A$
600  IF A$ <> "HLT" THEN 580
610  REM***PICK-A-PHRASE
620  GOTO Z OF 640,660,680
630  GOTO 690
640  RESTORE 1420
650  GOTO 690
660  RESTORE 1500
670  GOTO 690
680  RESTORE 1630
690  FOR I=1 TO RND(P)*C+1
700  READ A$
710  NEXT I
720  REM***PHRASE JUMBLER SECTION...FIRST FILL B$ WITH CTRL-G'S
730  LET B$=B$[2,1]
740  LET R=LEN(A$)
750  B$[1,R]='7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7'7
760  REM***IF B$(RANDOM X) = VACANT THEN B$(X)=A$(I); ELSE X=(X+1) MOD R;
770  FOR I=1 TO R
780  LET X=INT(RND(P)*R+1)
790  IF B$[X,X]='7 THEN 820
800  LET X=FNA(X)
810  GOTO 790
820  LET B$[X,X]=A$[I,I]
830  NEXT I
840  IF A$=B$ THEN 750
850  REM***NOW COMES THE FUN PART
860  LET N=0
870  PRINT '10'10"JUMBLE = ''"B$"''"
880  LET N=N+1
890  PRINT 
900  PRINT "GUESS #"N": ";
910  ENTER T0,T1,B$
920  REM***ANALYZE INPUTTED(B$)...P::=MATCH COUNT...F::=FERMI COUNT
930  LET P=F=0
940  LET C$=A$
950  FOR I1=1 TO LEN(B$) MIN R
960  FOR I2=1 TO R
970  IF C$[I2,I2] <> B$[I1,I1] THEN 1010
980  LET P=P+1
990  LET C$[I2,I2]='7
1000  GOTO 1020
1010  NEXT I2
1020  NEXT I1
1030  REM***BAGELS???...PICO???...FERMI???...SUCCESS???
1040  IF P <> 0 THEN 1070
1050  PRINT TAB(35);"BAGELS";
1060  GOTO 880
1070  FOR I=1 TO LEN(B$) MIN R
1080  IF A$[I,I] <> B$[I,I] THEN 1100
1090  LET F=F+1
1100  NEXT I
1110  REM***GRADING 'GRASSHOPPER'...PICO=P-F...FERMI=F
1120  LET P=P-F
1130  IF  NOT (F-R) THEN 1190
1140  IF  NOT (P) THEN 1160
1150  PRINT TAB(35);P"WRONG";
1160  IF  NOT (F) THEN 1180
1170  PRINT TAB(35);F"RIGHT";
1180  GOTO 880
1190  REM***INSCRUTABLE FORTUNE COOOKIE FACTORY...
1200  RESTORE 1310
1210  FOR I=1 TO RND(P)*8+1
1220  READ A$
1230  NEXT I
1240  PRINT TAB(35)'7'7'7'7'7'7'7'7'7'7'7'7A$
1250  PRINT '10'10'10"ANOTHER RUN (YES OR NO)";
1260  INPUT A$
1270  PRINT 
1280  IF A$[1,1]="Y" THEN 610
1290  PRINT "I THINK, THEREFORE I AM...I AM...I AM...I AM...I AM... I AM..."
1300  STOP 
1310  REM***FORTUNE COOKIES
1320  DATA "YOU GOT IT!"
1330  DATA "CORRECT!"
1340  DATA "VERY GOOD!"
1350  DATA "YES! THAT'S IT!"
1360  DATA "HOW RIGHT YOU ARE!"
1370  DATA "HOW CLEVER YOU ARE!"
1380  DATA "THAT'S IT!"
1390  DATA "YOU SMARTIE!"
1400  DATA "YOU OUGHT TO GET AN 'A'!"
1410  REM **JUMBLE DATA FOR LEVEL 1
1420  DATA "HOUSE","THROW","SMILE","LAUGH","LIKE","LAUGH","PLAY"
1430  DATA "CIRCUS","SUN","RAIN","WALK","ROAD","STREET","PARK"
1440  DATA "SCHOOL","STORE","HAND","EYES","HAIR","FINGERS"
1450  DATA "FEET","SHOES","COOKIES","MILK","TREE","SKY","MOON"
1460  DATA "GIRL","HOUSE","DOOR","CHAIR","SPOON","BOOK","CAR"
1470  DATA "MAN","NAME","BOY","HAPPY","EAT","GOOD","FUN"
1480  DATA "HLT"
1490  REM**JUMBLE DATA FOR LEVEL 2
1500  DATA "WAIT","STRAIGHT","SPRAY","PAYMENT","EIGHTY","VEIN"
1510  DATA "SURVEY","CONVEY","CAUTION","AWFUL","COUGH","THREAD"
1520  DATA "FRIENDLY","REQUEST","HEATER","SEIZE","EITHER","WEIRD"
1530  DATA "THIEF","JOURNEY","DISGUISE","BUYING","COAST","FLOOR"
1540  DATA "SHOULDER","THOUGH","NARROW","YELOW","TOURIST"
1550  DATA "CONTINUE","CRUISE","FRUIT","BOUNCE","CROOKED","SHOULD"
1560  DATA "DOUBLE","YOUNG","ENOUGH","COUNTRY","NOISY","DESTROY"
1570  DATA "FOUND","SUMMER","WINTER","MULTIPLY","ADDITION"
1580  DATA "SUBTRACT","DIVIDE","ENGLISH","EXIT","BRAIN","MOVIE"
1590  DATA "CARTOON","MONEY","PENCIL","FRIEND","PUBLIC","LETTER"
1600  DATA "ALLOWANCE","PLEASURE","BRAIN","HEART","SWIMMING"
1610  DATA "HLT"
1620  REM **JUMBLE DATA FOR LEVEL 3
1630  DATA "SUPPORT","TELEPHONE","SERVICE","FLOWER","MEMORY"
1640  DATA "UNIVERSITY","VACTION","ENVELOPE","SUCCESS","INVENT"
1650  DATA "PROTECTION","MANAGER","AVACADO","MOTORCYCLE","GRAPEFRUIT"
1660  DATA "JUMBLE","HUMBLE","KNOWLEDGE","INCREDIBLE","HUMOROUS"
1670  DATA "ANALYZE","MOSQUITO","XYLOPHONE","ECOLOGY","EXPLOSION"
1680  DATA "FINANCIAL","SUPERSTITIOUS","EMPLOYMENT","DANGEROUS"
1690  DATA "PURSUIT","MAGNIFIED","EXHAUSTION","COMMUNICATION"
1700  DATA "COMPUTER","TYPEWRITER","WARRIOR","PATIENCE","REPUBLIC"
1710  DATA "EGOCENTRIC","ELEPHANT","FLATTERY","GOVERNOR","HYPNOSIS"
1720  DATA "MEDITATAE","NORMAL","PROSPECT","PROMPT","PYRAMID"
1730  DATA "REALIZE","RECEPTIVE","SKEPTIC","SPECIALIST","STATIC"
1740  DATA "RHYME","ROMANCE","ARTICULATE","CALENDAR","FOOLISH"
1750  DATA "HLT"
1760  END 
