1 REM *** BULCOW BY GEOFF WYVILL, UNIV OF BRADFORD, ENGLAND 2 REM *** MODIFICATIONS FOR BASIC-PLUS BY DAVE AHL 3 REMARKABLY TRANSLATED TO OS8 BASIC BY KAY R. FISHER ...DEC 5 GOTO 500 10 DIMD(10,4),B(10),C(10),G(10) 15 RANDOMIZE\PRINT\PRINT\PRINT 20 PRINT"NEW GAME...."\PRINT\A=0\GOTO 200 30 PRINT\PRINT\PRINT\LETJ=0 35 PRINT"YOUR GUESS";\INPUTN\LETN=(N+.1)/100000 40 FORI=0TO4\LETG(I)=INT(10*N)\LETN=10*N-INT(10*N) 41 FORK=0TOI-1\IFG(I)=G(K)GOTO170 42 NEXTK 43 NEXTI 45 LETP=4\LETA=0\GOSUB300 50 PRINT V;"BULL";\IF V=1 GOTO 55\PRINT"S"; 55 IF V<>5 GOTO 60\PRINT " - YOU WIN"\GOTO 20 60 PRINT W-V;"COW";\IF W=V+1 GOTO 65\PRINT "S"; 65 IF J<>0 GOTO 68\A=1 \GOTO 200 68 GOSUB400 70 PRINT" - MY GUESS IS "; 75 FOR I =0 TO 4\PRINT CHR$(D(J,I)+48); 76 NEXT I 80 PRINT" MY SCORE";\INPUTB(J),C(J)\LETC(J)=C(J)+B(J) 81 IF B(J)=<-1 GOTO 82\IFB(J)=>6GOTO82\IFC(J)=>6GOTO82\IFC(J)-B(J)>-1GOTO83 82 PRINT" - RIDICULOUS!!";\GOTO 70 83IF B(J)<>4GOTO 85\IF C(J)=5 GOTO 82 85 IFB(J)<>5GOTO90\PRINT" - I WIN - MY NUMBER WAS";\GOTO 100 90 GOTO35 100 FOR I=0 TO 4\PRINT CHR$(D(0,I)+48); 101 NEXT I 110 GOTO20 150 PRINT\PRINT"YOU HAVE GIVEN ME INCONSISTENT SCORES. GAME SPOILED!"\GOTO20 170 PRINT"REPEATED DIGITS NOT ALLOWED"\GOTO35 200 FORP=0TO4 210 LETD(A,P)=INT(10*RND(1)) 220 FORI=0TOP-1\IFD(A,I)=D(A,P)GOTO210 230 NEXTI 240 NEXTP 250 IFA=0GOTO30 260 LETJ=1\GOTO70 300 LETV=0\LETW=0 310 FOR I=0TOP\IF D(A,I)<>G(I) GOTO 320\V=V+1 320 FOR K=0 TO 4\IF D(A,K)<>G(I)GOTO 330\W=W+1 330 NEXTK 340 NEXTI 350 RETURN 400 LETP=0 405 LETG(P)=D(J,P) 410 FORI=0TOP-1\IFG(I)=G(P)GOTO430 415 NEXTI 420 FORA=1TOJ\GOSUB300 425IFV>B(A)GOTO430\IFW>C(A)GOTO430\IF4-P=B(A)-VGOTO448 430 G(P)=G(P)+3\IF G(P)=<9GOTO432\G(P)=G(P)-10 432 IF P<>0GOTO435\IFG(P)=D(1,0)GOTO150 435 IFG(P)<>D(J,P)GOTO410 440 P=P-1\IF P<0GOTO150 445 GOTO430 448 NEXTA 450 LETP=P+1\IFP<5GOTO405 455 LETJ=J+1 460 FOR I=0 TO 4\D(J,I)=G(I) 461 NEXT I 465 RETURN 500 PRINT\PRINT\PRINT" BRADFORD UNIVERSITY BULLS AND COWS GAME"\PRINT 510 PRINT "WANT INSTRUCTIONS (Y OR N)";\INPUT A$\PRINT 520 IF A$="N" GOTO 10 530 PRINT"EACH PLAYER (YOU AND THE COMPUTER) THINK OF A 5-DIGIT NUMBER WITH" 540 PRINT"NO REPEATED DIGITS, E.G., 05387, 24961, 10356. PLAYERS IN TURN" 550 PRINT"TRY TO GUESS THE NUMBER OF THE OTHER. AFTER EACH GUESS, EACH" 560 PRINT"PLAYER GIVES THE OTHER PLAYER A SCORE FOR HIS GUESS CONSISTING" 570 PRINT"OF A NUMBER OF BULLS AND COWS. A BULL IS SCORED FOR EACH CORRECT" 580 PRINT"DIGIT IN THE CORRECT PLACE. A COW IS SCORED FOR EACH CORRECT DIGIT" 590 PRINT"BUT IN THE WRONG PLACE."\PRINT" E.G., IF MY NUMBER IS 50327" 600 PRINT" AND YOUR GUESS IS 20174" 610 PRINT" YOU SCORE 1 BULL (FOR THE 0) AND 2 COWS (FOR THE 2 AND 7)" 620 PRINT"THE COMPUTER EXPECTS ITS SCORES IN THE FORM '1,2' WHICH WOULD" 630 PRINT"INDICATE 1 BULL AND 2 COWS."\PRINT\PRINT"GOOD LUCK !!"\PRINT 640 GOTO 10 999 END