Java實現(xiàn)簡單無界面五子棋_第1頁
Java實現(xiàn)簡單無界面五子棋_第2頁
Java實現(xiàn)簡單無界面五子棋_第3頁
Java實現(xiàn)簡單無界面五子棋_第4頁
Java實現(xiàn)簡單無界面五子棋_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第Java實現(xiàn)簡單無界面五子棋for(inti=0;ichessTypes.length;i++){

for(intj=0;jchessTypes[i].length;j++){

chessTypes[i][j]=newChessType();

chessTypes[i][j].setChessType("?");

}

}

}

//下白棋

publicvoidsetWhiteChess(intx,inty){

chessTypes[x][y].setChessType("?");

}

//下黑棋

publicvoidsetBlackChess(intx,inty){

chessTypes[x][y].setChessType("●");

}

//判斷是否勝利

publicbooleancheckWin(inti,intj){

//TODOAuto-generatedmethodstub

booleanflag=false;

//判斷縱向是否有五個棋子是相同的顏色

intcount1=1;//相同顏色棋子的個數(shù)

Stringcolor=chessTypes[i][j].getChessType();//剛下的棋子的顏色

inta=1;

//棋子索引的增量

while((i+a)rowcolor==chessTypes[i+a][j].getChessType()){

count1++;

a++;

}

a=1;

while((i-a)=0color==chessTypes[i-a][j].getChessType()){

count1++;

a++;

}

if(count1=5){

flag=true;

}

//判斷縱向是否有五個棋子是相同的顏色

intcount2=1;

a=1;

while((j+a)columcolor==chessTypes[i][j+a].getChessType()){

count2++;

a++;

}

a=1;

while((j-a)=0color==chessTypes[i][j-a].getChessType()){

count2++;

a++;

}

if(count2=5){

flag=true;

}

//右上

左下是否有五個棋子是相同的顏色

intcount3=1;

a=1;

while((i+a)row(j-a)=0color==chessTypes[i+a][j-a].getChessType()){

count3++;

a++;

}

a=1;

while((i-a)=0(j+a)columcolor==chessTypes[i-a][j+a].getChessType()){

count3++;

a++;

}

if(count3=5){

flag=true;

}

//左上

右下

是否有五個棋子是相同的顏色

intcount4=1;

a=1;

while((i-a)0(j-a)=0color==chessTypes[i-a][j-a].getChessType()){

count4++;

a++;

}

a=1;

while((i+a)row(j+a)columcolor==chessTypes[i+a][j+a].getChessType()){

count4++;

a++;

}

if(count4=5){

flag=true;

}

returnflag;

}

//落子后打印棋盤

publicvoidprint(){

for(inti=0;ichessTypes.length;i++){

for(intj=0;jchessTypes[i].length;j++){

System.out.print(chessTypes[i][j].getChessType());

}

System.out.println();

}

}

}

3.測試

**

*@authorhudongsheng

*@date2025/10/29-9:27

publicclassTest{

publicstaticvoidmain(String[]args){

booleanflag=true;

intx;

inty;

Gobanggobang=newGobang(10,10);

Scannerscanner=newScanner(System.in);

gobang.initChessType();

//下棋

System.out.println("黑棋執(zhí)先");

while(true){

gobang.print();

System.out.println("請輸入下黑棋的坐標:");

x=scanner.nextInt();

y=scanner.nextInt();

gobang.setBlackChess(x,y);

if(gobang.checkWin(x,y)){

gobang.print();

System.out.println("黑棋勝!");

break;

}

gobang.print();

System.out.println("請輸入下白棋的坐標:");

x=scanner.nextInt();

y=scanner.nextInt();

gobang.setWhiteChess(x,y);

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論