2 PRINT "TIC-TAC-TOE" 4 PRINT "CREATIVE COMPUTING MORRISTOWN, NEW JERSEY" 6 PRINT 8 PRINT "THE BOARD IS NUMBERED:" 10 PRINT " 1 2 3" 12 PRINT " 4 5 6" 14 PRINT " 7 8 9" 16 PRINT 20 FOR I=1 TO 9:@(I)=0:NEXT I 50 INPUT"DO YOU WANT 'X' OR 'O' (X=1,O=0)"C 55 IF C=1 GOTO 475 60 P=0,Q=1 100 G=-1,H=1:IF @(5)#0 GOTO 103 102 @(5)=-1:GOTO 195 103 IF @(5)#1 GOTO 106 104 IF @(1)#0 GOTO 110 105 @(1)=-1:GOTO 195 106 IF (@(2)=1)*(@(1)=0) GOTO 181 107 IF (@(4)=1)*(@(1)=0) GOTO 181 108 IF (@(6)=1)*(@(9)=0) GOTO 189 109 IF (@(8)=1)*(@(9)=0) GOTO 189 110 IF G=1 GOTO 112 111 GOTO 118 112 J=3*(M-1)/3+1 113 IF J=M LET K=1 114 IF J+1=M LET K=2 115 IF J+2=M LET K=3 116 GOTO 120 118 FOR J=1 TO 7 STEP 3:FOR K=1 TO 3 120 IF @(J)#G GOTO 130 122 IF @(J+2)#G GOTO 135 126 IF @(J+1)#0 GOTO 150 128 @(J+1)=-1:GOTO 195 130 IF @(J)=H GOTO 150 131 IF @(J+2)#G GOTO 150 132 IF @(J+1)#G GOTO 150 133 @(J)=-1:GOTO 195 135 IF @(J+2)#0 GOTO 150 136 IF @(J+1)#G GOTO 150 138 @(J+2)=-1:GOTO 195 150 IF @(K)#G GOTO 160 152 IF @(K+6)#G GOTO 165 156 IF @(K+3)#0 GOTO 170 158 @(K+3)=-1:GOTO 195 160 IF @(K)=H GOTO 170 161 IF @(K+6)#G GOTO 170 162 IF @(K+3)#G GOTO 170 163 @(K)=-1:GOTO 195 165 IF @(K+6)#0 GOTO 170 166 IF @(K+3)#G GOTO 170 168 @(K+6)=-1:GOTO 195 170 GOTO 450 171 IF (@(3)=G)*(@(7)=0) GOTO 187 172 IF (@(9)=G)*(@(1)=0) GOTO 181 173 IF (@(7)=G)*(@(3)=0) GOTO 183 174 IF (@(9)=0)*(@(1)=G) GOTO 189 175 IF G=-1 LET G=1,H=-1:GOTO 110 176 IF (@(9)=1)*(@(3)=0) GOTO 182 177 FOR I=2 TO 9:IF @(I)#0 GOTO 179 178 @(I)=-1:GOTO 195 179 NEXT I 181 @(1)=-1:GOTO 195 182 IF @(1)=1 GOTO 177 183 @(3)=-1:GOTO 195 187 @(7)=-1:GOTO 195 189 @(9)=-1 195 PRINT"THE COMPUTER MOVES TO..." 202 GOSUB 1000 205 GOTO 500 450 IF G=1 GOTO 465 455 IF (J=7)*(K=3) GOTO 465 460 NEXT K:NEXT J 465 IF @(5)=G GOTO 171 467 GOTO 175 475 P=1,Q=0 500 INPUT"WHERE DO YOU MOVE"M 502 IF M=0 PRINT"THANKS FOR THE GAME.":GOTO 2000 503 IF M>9 GOTO 506 505 IF @(M)=0 GOTO 510 506 PRINT"THAT SQUARE IS OCCUPIED.":GOTO 500 510 G=1,@(M)=1 520 GOSUB 1000 530 GOTO 100 1000 FOR I=1 TO 9:PRINT" ",:IF @(I)#-1 GOTO 1014 1011 IF Q=1 PRINT "X ", 1012 IF Q=0 PRINT "O ", 1013 GOTO 1020 1014 IF @(I)#0 GOTO 1016 1015 PRINT" ",:GOTO 1020 1016 IF P=1 PRINT "X ", 1017 IF P=0 PRINT "O ", 1020 IF (I#3)*(I#6) GOTO 1050 1030 PRINT"":PRINT"---+---+---" 1040 GOTO 1080 1050 IF I=9 GOTO 1080 1060 PRINT"!", 1080 NEXT I:PRINT 1095 FOR I=1 TO 7 STEP 3 1100 IF @(I)#@(I+1) GOTO 1115 1105 IF @(I)#@(I+2) GOTO 1115 1110 IF @(I)=-1 GOTO 1350 1112 IF @(I)=1 GOTO 1200 1115 NEXT I:FOR I=1 TO 3:IF @(I)#@(I+3) GOTO 1150 1130 IF @(I)#@(I+6) GOTO 1150 1135 IF @(I)=-1 GOTO 1350 1137 IF @(I)=1 GOTO 1200 1150 NEXT I:FOR I=1 TO 9:IF @(I)=0 GOTO 1155 1152 NEXT I:GOTO 1400 1155 IF @(5)#G GOTO 1170 1160 IF (@(1)=G)*(@(9)=G) GOTO 1180 1165 IF (@(3)=G)*(@(7)=G) GOTO 1180 1170 RETURN 1180 IF G=-1 GOTO 1350 1200 PRINT"YOU BEAT ME!! GOOD GAME.":GOTO 2000 1350 PRINT"I WIN, TURKEY!!!":GOTO 2000 1400 PRINT"IT'S A DRAW. THANK YOU." 2000 END