20 CLEAR 1000 21 B$="" 31 INPUT"INPUT X AND Y DIMENSIONS ";Y,X 32 IF X>30 OR Y>30 THEN 31 33 IF X>Y THEN UO=X:GOTO 80 35 UO=Y 40 INPUT"NUMBER OF WORDS ";N 80 DIM A$(X,Y),N$(N),L(N,3) 85 GOSUB 5000 89 Q8=1 90 GOSUB 4000 95 PRINTQ8 100 FOR I1=1 TO N 150 GOTO 240 230 REM 233 L(I1,1)=A:L(I1,2)=B:L(I1,3)=D 235 GOTO 1330 240 CO=0 290 S$=N$(I1) 340 Z=LEN(S$) 410 GOSUB 1290 420 CO=CO+1 430 IFCO/100<>INT(CO/100)THEN450 440 PRINT"TRY #";CO;" "; 450 IF CO<1000 THEN 480 460 Q8=Q8+1:IF Q8=100 THEN STOP 465 GOTO 90 470 PRINTQ8:GOTO 90 480 ONDGOTO490,590,690,790,890,990,1090,1190 490 IF B+Z>YTHEN410 500 FORI=1TOLEN(S$) 502 A1=A:B1=B+I-1 505 GOSUB2000 506 GOSUB3500 510 IFL$=B$ORL$=N1$THEN520 515 GOTO410 520 NEXTI 530 FORI=1TOLEN(S$) 535 GOSUB2000 540 A$(A,B+I-1)=N1$ 570 NEXTI 580 GOTO230 590 IFB+Z>YORA-Z<1THEN410 600 FORI=1TOLEN(S$) 602 A1=A-(I-1):B1=B+I-1 605 GOSUB2000 606 GOSUB3500 610 IFL$=B$ORL$=N1$THEN620 615 GOTO410 620 NEXTI 630 FORI=1TOLEN(S$) 635 GOSUB2000 640 A$(A-(I-1),B+1-1)=N1$ 670 NEXTI 680 GOTO230 690 IFA-Z<1THEN410 700 FORI=1TOLEN(S$) 702 A1=A-(I-1):B1=B 705 GOSUB2000 706 GOSUB3500 710 IFL$=B$ORL$=N1$THEN720 715 GOTO410 720 NEXTI 730 FORI=1TOLEN(S$) 735 GOSUB2000 740 A$(A-(I-1),B)=N1$ 770 NEXTI 780 GOTO230 790 IFA-Z<1ORB-Z<1THEN410 800 FORI=1TOLEN(S$) 802 A1=A-(I-1):B1=B-(I-1) 805 GOSUB2000 806 GOSUB3500 810 IFL$=B$ORL$=N1$THEN820 815 GOTO410 820 NEXTI 830 FORI=1TOLEN(S$) 835 GOSUB2000 840 A$(A-(I-1),B-(I-1))=N1$ 870 NEXTI 880 GOTO230 890 IFB-Z<1THEN410 900 FORI=1TOLEN(S$) 902 A1=A:B1=B-(I-1) 905 GOSUB2000 906 GOSUB3500 910 IFL$=B$ORL$=N1$THEN920 915 GOTO410 920 NEXTI 930 FORI=1TOLEN(S$) 935 GOSUB2000 940 A$(A,B-(I-1))=N1$ 970 NEXTI 980 GOTO230 990 IFA+Z>XORB-Z<1THEN410 1000 FORI=1TOLEN(S$) 1002 A1=A+I-1:B1=B-(I-1) 1005 GOSUB2000 1006 GOSUB3500 1010 IFL$=N1$ORL$=B$THEN1020 1015 GOTO410 1020 NEXTI 1030 FORI=1TOLEN(S$) 1035 GOSUB2000 1040 A$(A+I-1,B-(I-1))=N1$ 1070 NEXTI 1080 GOTO230 1090 IFA+Z>XTHEN410 1100 FORI=1TOLEN(S$) 1102 A1=A+I-1:B1=B 1105 GOSUB2000 1106 GOSUB3500 1110 IFL$=N1$ORL$=B$THEN1120 1115 GOTO410 1120 NEXTI 1130 FORI=1TOLEN(S$) 1135 GOSUB2000 1140 A$(A+I-1,B)=N1$ 1170 NEXTI 1180 GOTO230 1190 IFA+Z>XORB+Z>YTHEN410 1200 FORI=1TOLEN(S$) 1202 A1=A+I-1:B1=B+I-1 1205 GOSUB2000 1206 GOSUB3500 1210 IFL$=B$ORL$=N1$THEN1220 1215 GOTO410 1220 NEXTI 1230 FORI=1TOLEN(S$) 1235 GOSUB2000 1240 A$(A+I-1,B+I-1)=N1$ 1270 NEXTI 1280 GOTO230 1290 A=INT(X*RND(8)+1) 1300 B=INT(Y*RND(8)+1) 1310 D=INT(8*RND(5)+1) 1320 RETURN 1330 NEXTI1 1380 FORI=1TO5:PRINT:NEXTI 1390 FORI=1TOX 1400 FORJ=1TOY 1410 IFA$(I,J)=""THEN1600 1420 PRINTA$(I,J);" "; 1430 NEXTJ 1440 PRINT:PRINT 1450 NEXTI 1460 PRINT 1470 GOSUB1790 1480 PRINT 1590 STOP 1600 A$(I,J)=CHR$(INT(26*RND(1)+65)) 1610 GOTO1420 1650 PRINT 1790 INPUT"DO YOU WANT THE ANSWERS";ANS$ 1791 AN=0 1792 IFLEFT$(ANS$,2)="YE"THENAN=1 1795 PRINT"THEN HIDDEN WORDS ARE:" 1800 FORK=1TON 1810 PRINTN$(K); 1815 IFAN=0THENPRINT:GOTO1830 1820 PRINTTAB(30);L(K,1);","L(K,2);",";L(K,3) 1830 NEXTK 1940 RETURN 1950 STOP 2000 N1$=MID$(S$,I,1) 2005 RETURN 3500 L$=A$(A1,B1):RETURN 4000 FORI=1TOX:FORJ=1TOY:A$(I,J)="":NEXTJ,I 4010 RETURN 5000 FORI=1TON 5010 PRINT"WORD #";I; 5020 INPUTN$(I) 5030 IFLEN(N$(I))>UOTHEN5010 5040 NEXTI 5050 RETURN