プログラミングをもっと楽しく!
Kidspod;はこどものプログラマーを
応援するための投稿サイトです。
はじめての人はこちらから
新規メンバー登録
メンバーの人はこちらから

2017/03/20 13:42:43

MixJuice GET URL : kidspod.club/mj/171

オセロ

バージョンアップしました

オセロです。
コンピュータと対戦します。
コンピュータはそれなりに強いです。

・Xの入力時に99を入力するとパスできます。
・X,Yの入力時に何も入力しないと盤面を再表示します。
・コンピュータは置けるところが無い場合、自動的にパスします。


2017年4月19日 追記
さらにバージョンアップしました
・Xの入力時に99を入力するとパスできますが、置けるところがある場合はパスされません
・パラメータの誤りで、コンピュータが(2,1)に置かないバグを修正しました

  • 1
  • 1

SOURCE CODE

1 CLV:J=1:K=2:LET[1],63,56,7,18,45,42,21,16,47,2,61,40,23,58,5,26,37,19,44,34,29,43,20,17,46,13,114,138,53,41,22,24,59,39,132,96,60,31,3,25,51,38,12,33,52,30,11,49,14,9,54,8,55,6,57,15,1,48,62
2 GSB10:G=0
3 INPUT"X?",X:IFX=99G=1:FORL=0TO63:X=L%8:Y=L/8:GSB14:NEXT:IFG=1GOTO7ELSEGOTO2
4 IFX=0ORX>8GOTO2
5 INPUT"Y?",Y:IFY=0ORY>8GOTO2
6 X=X-1:Y=Y-1:GSB14:IFF?"NG!":GOTO3
7 G=0:GSB10:Z=0:J=2:K=1
8 X=[Z]&56>>3:Y=[Z]&7:GSB14:Z=Z+1:IFFANDZ<>60GOTO8
9 ?"COM X";X+1;" Y";Y+1:J=1:K=2:GOTO2
10 ?"Y|12345678-X";:M=0:N=0:FORI=0TO63:IFI%8=0?:?I/8+1;"|";
11 B=[I]>>6:IFB=1?"O";:M=M+1ELSEIFB?"#";:N=N+1ELSE?"-";
12 NEXT:?" O";M;" #";N:?:IFM+N=64END
13 RTN
14 F=1:IF[X+Y*8]>>6RTN
15 FORI=0TO10:IFI=3ORI=5ORI=7NEXT
16 T=I&12>>2-1:U=I&3-1:V=X+T:W=Y+U:IFV<0ORW<0ORV>7ORW>7GOTO24
17 IF[V+W*8]>>6<>KGOTO24
18 V=V+T:W=W+U:IFV<0ORV>7ORW<0ORW>7GOTO24
19 B=[V+W*8]>>6:IFB=KGOTO18
20 IFB<>JGOTO24
21 R=X:S=Y*8:F=0:IFGG=2:GOTO24ELSE[R+S]=[R+S]&63+64*J
22 R=R+T:S=S+U*8:A=R+S:IF[A]>>6=JGOTO24
23 [A]=[A]&63+64*J:GOTO22
24 NEXT:RTN

COMMENT

Kidspod運営チーム
Kidspod運営チーム2017/04/18 19:59:44

人間ふたりで対戦するのではなく、コンピュータと対戦できるのがすごいです! 私は見事に負けてしまいました……。