10 REM CHWAR.ECB 15 REM ...CHINESE WAR...from ??? via EAGAN Dec 80 R.E.H. 20 REM ...Revised 03-10-81 R.E.H. 30 PRINT "&K&J&J" 40 PRINT TAB(15);"*$* CHINESE WAR *$*" 50 PRINT 60 PRINT "THIS PROGRAM PLAYS THE GAME OF CHINESE WAR." 70 PRINT "ASSUME THAT THERE ARE 25 STICKS IN A PILE." 80 PRINT " THE PLAYERS TAKE TURNS REMOVING 1, 2, 3, OR 4" 90 PRINT "STICKS FROM THE PILE. THE PLAYER WHO IS" 100 PRINT "FORCED TO TAKE THE LAST STICK LOSES." 110 DIM C$(50),L$(50),W$(50) 120 LET R=INT(RND(0)*5)+1: RESTORE 890 130 FOR X=1 TO R: READ C$: NEXT X 140 LET R=INT(RND(0)*5)+1: RESTORE 940 150 FOR X=1 TO R: READ L$: NEXT X 160 LET R=INT(RND(0)*5)+1: RESTORE 1000 170 FOR X=1 TO R: READ W$: NEXT X 180 PRINT 190 PRINT 200 PRINT 210 PRINT "Do you want to go first ? ( Y or N ) ---=>"; 220 INPUT (1,0)Q$: LET Q$=Q$+"Y" 230 PRINT 240 PRINT 250 LET X=25 260 IF Q$(1,1)="Y" THEN 330 270 IF Q$(1,1)="y" THEN 330 280 PRINT "I CHOOSE 4 STICKS." 290 PRINT "THERE ARE NOW 21 STICKS LEFT." 300 LET X=21 310 PRINT 320 PRINT 330 FOR I=1 TO 10 340 GOSUB 410 350 IF X=1 THEN 690: REM === OPPONENT WINS 360 IF X<1 THEN 800: REM === I WIN 370 GOSUB 530 380 IF X=1 THEN 800: REM === I WIN 390 NEXT 400 REM ---------NUMBER OF STICKS OPPONENT TAKES---------- 410 PRINT "How many sticks do you want ---=>"; 420 INPUT N 430 IF N<>INT(N) THEN 480 440 IF N<1 THEN 480 450 IF N>4 THEN 480 460 LET X=X-N 470 RETURN 480 PRINT C$: LET R=INT(RND(0)*5)+1: RESTORE 890 490 FOR X=1 TO R: READ C$: NEXT X 500 PRINT 510 GOTO 410 520 REM ---------NUMBER OF STICKS I TAKE------------- 530 LET N=X-5*INT((X-1)/5)-1 540 IF INT((X-1)/5)<>(X-1)/5 THEN 560 550 LET N=INT(RND(X)*4+1) 560 LET X=X-N 570 IF N>1 THEN 600 580 PRINT "I WILL TAKE ONE STICK." 590 GOTO 640 600 PRINT "I CHOOSE";N;" STICKS." 610 IF X>1 THEN 640 620 PRINT "THERE IS ONE STICK LEFT." 630 GOTO 650 640 PRINT "THERE ARE NOW";X;" STICKS LEFT." 650 PRINT 660 PRINT 670 RETURN 680 REM -----------HE WINS------------- 690 PRINT L$ 700 PRINT 710 PRINT 720 PRINT 730 PRINT 740 PRINT "LETS PLAY ANOTHER GAME." 750 PRINT "SINCE YOU WENT FIRST LAST TIME, ...";I 760 PRINT TAB(15);"I WILL GO FIRST!" 770 PRINT 780 GOTO 280 790 REM -----------I WIN-------------- 800 PRINT W$ 810 LET F=F+1 820 PRINT 830 PRINT 840 PRINT "Do you want to play another game ---=>"; 850 INPUT (1,0)R$: LET R$=R$+"Y" 860 IF R$(1,1)="Y" THEN 120 870 IF R$(1,1)="y" THEN 120 880 REM ---REMARKS IF OPPONENT TAKES ILLEGAL NO. OF STICKS 890 DATA "I THINK YOU ARE TRYING TO CHEAT!" 900 DATA "I CANNOT ALLOW THAT" 910 DATA "DID YOU READ THE DIRECTIONS ?" 920 DATA "DON'T TRY THAT AGAIN! ","WHY DON'T YOU GIVE UP?" 930 REM ---------REMARK IF OPPONENT WINS---------- 940 DATA "HOW LUCKY CAN YOU GET! " 950 DATA "YOU ARE BETTER THAN I EXPECTED" 960 DATA "I WAS NOT PAYING ATTENTION ." 970 DATA "I CAN BEAT YOU TOO! (And get revenge)" 980 DATA "NOBODY IS PERFECT YOU KNOW ...." 990 REM ----------REMARKS IF I WIN-------------- 1000 DATA "THE GOOD GUYS WIN AGAIN!" 1010 DATA "I GUESS I WON .,YOU LOST!" 1020 DATA "I MUST BE SUPERIOR .","NOW DON'T GET ANGRY. " 1030 DATA "WHEN YOUR HOT, YOUR HOT. (And I guess your not)" 1040 PRINT "YOU ARE NOT VERY GOOD. BRING ON SOME BETTER" 1050 PRINT "COMPETITION. NEXT, PLEASE." 1060 END