1 RANDOMIZE 5 WIDTH 40,25:SCREEN 0,0:LINE(320,0)-(320,199):CLS 3:CONSOLE 0,25,0,1 10 DEFINT A-Z:DIM P(5,5),C(5,5) 20 FOR I=1 TO 5:FOR J=1 TO 5:P(I,J)=I+J*5-5:C(I,J)=P(I,J):NEXT J,I 30 FOR I=1 TO 3:FOR J=1 TO 5:FOR K=1 TO 5:SWAP P(J,K),P(INT(RND(1)*5)+1,INT(RND(1)*5)+1):SWAP C(K,J),C(INT(RND(1)*5)+1,INT(RND(1)*5)+1):NEXT K,J,I 40 'PRINT"˜••‘••‘••‘••‘••™" 50 'FOR I=1 TO 5 60 'PRINT"– – – – – –" 70 'PRINT"– – – – – –" 80 'IF I<5 THEN PRINT"“••••••••••’" 90 'NEXT:PRINT"š••••••••••› 100 WINDOW(0,0)-(319,199):VIEW(160,0)-(480,199):FOR I=0 TO 5 110 LINE(I*48,0)-(I*48,120),7 120 LINE(0,I*24)-(240,I*24),7 130 NEXT I 140 GOSUB 1400 150 CONSOLE 16,25 160 LOCATE 9,15:PRINT"You = 0 Com = 0" 170 X=1:Y=1 175 LINE(X*48-1,Y*24-1)-(X*48-47,Y*24-23),6,B 180 A=VAL(INPUT$(1)):IF(A=0 OR A MOD 2=1)AND A<>5 THEN 180 185 LINE(X*48-1,Y*24-1)-(X*48-47,Y*24-23),0,B 190 IF A=2 AND Y<5 THEN Y=Y+1 200 IF A=8 AND Y>1 THEN Y=Y-1 210 IF A=4 AND X>1 THEN X=X-1 220 IF A=6 AND X<5 THEN X=X+1 230 IF A><5 GOTO 175 240 SJ=P(X,Y):IF SJ<0 THEN 175 250 GOSUB *NRP 260 ' Com Kangae 270 IF C(3,3)>0 THEN H=3:V=3:SJ=C(3,3):GOTO 330 280 FOR I=4 TO 1 STEP -1:FOR J=1 TO 5 285 IF C(0,0)=>I THEN B=0:FOR V=1 TO 5:H=V:GOSUB *SRB:NEXT:IF B>0 THEN H=B:V=D:SJ=C(H,V):I=0:J=5:GOTO 310 290 IF C(J,0)=>I THEN H=J:B=0:FOR V=1 TO 5:GOSUB *SRB:NEXT:IF B>0 THEN H=B:V=D:SJ=C(H,V):I=0:J=5:GOTO 310 295 IF CK=>I THEN B=0:FOR V=1 TO 5:H=6-V:GOSUB *SRB:NEXT:IF B>0 THEN H=B:V=D:SJ=C(H,V):I=0:J=5:GOTO 310 300 IF C(0,J)=>I THEN V=J:B=0:FOR H=1 TO 5:GOSUB *SRB:NEXT:IF B>0 THEN H=B:V=D:SJ=C(H,V):I=0:J=5:GOTO 310 310 NEXT J,I:IF SJ<0 THEN 270 330 GOSUB *NRC 340 GOTO 175 350 *NRP:C=5 360 FOR I=1 TO 5:FOR J=1 TO 5:IF C(I,J)=SJ THEN H=I:V=J:I=5:J=5 370 NEXT J,I:GOSUB *NRL:RETURN 380 *NRC:C=3 390 FOR I=1 TO 5:FOR J=1 TO 5:IF P(I,J)=SJ THEN X=I:Y=J:I=5:J=5 400 NEXT J,I:GOTO *NRL 410 *NRL 420 P(X,Y)=-P(X,Y):C(H,V)=-C(H,V) 430 LINE(X*48-46,Y*24-22)-(X*48-2,Y*24-2),C,BF 440 PUT@(X*48-16-LEN(STR$(P(X,Y)))*8,Y*24-20),KANJI(&H2300+ASC(MID$(STR$(P(X,Y)),2,1))),PSET,4,0 450 IF ABS(P(X,Y))>9 THEN PUT@(X*48-LEN(STR$(P(X,Y)))*8,Y*24-20),KANJI(&H2300+ASC(MID$(STR$(P(X,Y)),3,1))),PSET,4,0 460 P(X,0)=P(X,0)+1:IF P(X,0)=5 THEN PH=PH+1:LINE(X*48-24,0)-(X*48-25,120),2,B 470 P(0,Y)=P(0,Y)+1:IF P(0,Y)=5 THEN PH=PH+1:LINE(0,Y*24-12)-(240,Y*24-12),2 480 IF X=Y THEN P(0,0)=P(0,0)+1:IF P(0,0)=5 THEN PH=PH+1:LINE(0,0)-(240,120),2 490 IF X+Y=6 THEN PK=PK+1:IF PK=5 THEN PH=PH+1:LINE(240,0)-(0,120),2 500 C(H,0)=C(H,0)+1:IF C(H,0)=5 THEN CH=CH+1 510 C(0,V)=C(0,V)+1:IF C(0,V)=5 THEN CH=CH+1 520 IF H=V THEN C(0,0)=C(0,0)+1:IF C(0,0)=5 THEN CH=CH+1 530 IF H+V=6 THEN CK=CK+1:IF CK=5 THEN CH=CH+1 540 LOCATE 9,15:PRINT USING"You = # Com = #";PH,CH 550 IF PH>4 OR CH>4 THEN 1600 ELSE RETURN 600 *SRB 610 IF C(H,V)>0 THEN B=H:D=V:H=5:V=5 620 RETURN 1399 END 1400 FOR I=1 TO 5:FOR J=1 TO 5 1405 IF P(I,J)<0 THEN LINE(I*48-47,24*J-23)-(I*48-1,24*J-1),5,BF 1410 PUT@(I*48-16-LEN(STR$(P(I,J)))*8,J*24-20),KANJI(&H2300+ASC(MID$(STR$(P(I,J)),2,1))),PSET,4,0 1420 IF ABS(P(I,J))>9 THEN PUT@(I*48-LEN(STR$(P(I,J)))*8,J*24-20),KANJI(&H2300+ASC(MID$(STR$(P(I,J)),3,1))),PSET,4,0 1430 NEXT J,I:RETURN 1440 FOR I=1 TO 5:FOR J=1 TO 5 1445 IF C(I,J)<0 THEN LINE(I*48-47+320,24*J-23)-(I*48-1+320,24*J-1),5,BF 1450 PUT@(I*48-16-LEN(STR$(C(I,J)))*8+320,J*24-20),KANJI(&H2300+ASC(MID$(STR$(C(I,J)),2,1))),PSET,4,0 1460 IF ABS(C(I,J))>9 THEN PUT@(I*48-LEN(STR$(C(I,J)))*8+320,J*24-20),KANJI(&H2300+ASC(MID$(STR$(C(I,J)),3,1))),PSET,4,0 1470 NEXT J,I:RETURN 1600 CLS 2:SCREEN 0,0 1610 FOR I=0 TO 5 1620 LINE(I*48,0)-(I*48,120),7 1625 LINE(I*48+320,0)-(I*48+320,120),7 1630 LINE(0,I*24)-(240,I*24),7 1635 LINE(320,I*24)-(560,I*24),7 1640 NEXT I 1650 GOSUB 1400 1660 GOSUB 1440 1670 FOR I=1 TO 5 1680 IF P(I,0)=5 THEN LINE(I*48-24,0)-(I*48-23,120),2,B 1690 IF P(0,I)=5 THEN LINE(0,I*24-12)-(240,I*24-12),2 1700 IF C(I,0)=5 THEN LINE(I*48-24+320,0)-(I*48-23+320,120),2,B 1710 IF C(0,I)=5 THEN LINE(320,I*24-12)-(560,I*24-12),2 1720 NEXT 1730 IF P(0,0)=5 THEN LINE(0,0)-(240,120),2 1740 IF C(0,0)=5 THEN LINE(320,0)-(560,120),2 1750 IF PK=5 THEN LINE(240,0)-(0,120),2 1760 IF CK=5 THEN LINE(560,0)-(320,120),2 1770 END