/** T5_Gobang.java
*2013 2013-7-22 下午 6:19:19
* ptc01_ja051342
* @author 占戈
*
*/
/*Fuction :
* 5,使用二维数组开发一个五子棋
*/
package wangxiaoxuan_s0day5_task;
import java.util.Random;
public class T5_Gobang
{
public static void main(String[] args)
{
int size =9;
int[][] chessBoard = new int[size][size]; // 9X9 棋盘 0 为 空子
Random r= new Random() ;
System.out.println("1 号选手执○棋. 2 号选手执●棋");
// 初始化第一个旗子在 中央
int x =(size-1)/2;
int y=x;
//生成 下子的位置
for( int num=0; num<size*size ; num++ )
{ //开始下棋 num 是当前旗子数
while(chessBoard[x][y]!=0)
{// 生生成的 位置上不能有旗子
x=r.nextInt(size);
y=r.nextInt(size);
}
chessBoard[x][y]=num%2+1;
//TODO 这里判断胜负
if(isLL(chessBoard ,x,y,num) || isXl(chessBoard ,x,y,num) ||
isYl(chessBoard ,x,y,num)|| isRL(chessBoard ,x,y,num) )
{//isXl(chessBoard ,x,y,num) || isYl(chessBoard ,x,y,num||
isRL(chessBoard ,x,y,num))
System.out.println(""+(num%2+1)+"号选手胜出 ");
System.out.println(" 获胜点位: x="+x+", y="+y);
break;
}
}
show(chessBoard);