100 D$="123456789" 110 FOR I=1 TO 4 120 P=INT(RND(1)*LEN(D$))+1 130 N$=N$+MID$(D$,P,1) 140 D$=MID$(D$,1,P - 1)+MID$(D$,P+1,8) 150 NEXT 160 PRINT CHR$(147);"A RANDOM NUMBER HAS BEEN CREATED." 170 PRINT "THE NUMBER HAS FOUR DIGITS FROM 1 TO 9, WITHOUT DUPLICATION." 200 FOR Q=0 TO 1 STEP 0 210 INPUT "GUESS THE NUMBER: "; G% 219 REM CONVERT TO STRING AND TRIM LEADING SPACE 220 G$=RIGHT$(STR$(G%),4) 230 M=LEN(G$)<>4 OR G%=0 240 IF NOT M THEN GOSUB 600 250 IF NOT M THEN GOSUB 700 260 IF M THEN PRINT "THE GUESS IS MALFORMED.":NEXT Q 270 B=0 280 C=0 300 FOR I=1 TO 4 310 C$=MID$(N$,I,1) 320 BULL=MID$(G$,I,1)=C$ 330 COW=0 340 IF NOT BULL THEN FOR J=1 TO 4:COW=MID$(G$,J,1)=C$:IF NOT COW THEN NEXT J 350 B=B+ABS(BULL) 360 C=C+ABS(COW) 370 NEXT I 380 PRINT "BULLS:";B:PRINT "COWS:";C 390 Q=ABS(G$=N$) 400 NEXT Q 500 PRINT "GOOD JOB!":END 600 FOR I=2 TO 4:M=MID$(G$,I,1)="0" 610 IF NOT M THEN NEXT I 620 RETURN 700 FOR I=1 TO 3 710 FOR J=I+1 TO 4 720 M=MID$(G$,I,1)=MID$(G$,J,1) 730 IF NOT M THEN NEXT J,I 740 RETURN