📄 checkwin.java
字号:
public class CheckWin {
int i,j;
int m=0;
int n=0;
int x,y;
int ch[][]=new int[18][18 ];
public void CheckWin()
{
}
public int CheckWin(int ch_[][],int i_,int j_)
{
i=i_;
j=j_;
ch=ch_;
for(x=i;x<(i+4)&&(x<17);x++)
{
if(ch[x][j]==ch[x+1][j])
m++;
else
break;
}
for(x=i;x>(i-4)&&(x>0);x--)
{
if(ch[x][j]==ch[x-1][j])
n++;
else
break;
}
if((m+n)>=4) //判断横向
return ch[i][j];
m=0;
n=0;
for(x=j;x<(j+4)&&(x<17);x++)
{
if(ch[i][x]==ch[i][x+1])
m++;
else
break;
}
for(x=j;x>(j-4)&&(x>0);x--)
{
if(ch[i][x]==ch[i][x-1])
n++;
else
break;
}
if((m+n)>=4) //判断纵向
return ch[i][j];
m=0;
n=0;
for(x=i,y=j;x<(i+4)&&y<(j+4)&&x<17&&y<17;x++,y++)
{
if(ch[x][y]==ch[x+1][y+1])
m++;
else
break;
}
for(x=i,y=j;x>(i-4)&&y>(j-4)&&x>0&&y>0;x--,y--)
{
if(ch[x][y]==ch[x-1][y-1])
n++;
else
break;
}
if((m+n)>=4) //判断左上右下向
return ch[i][j];
m=0;
n=0;
for(x=i,y=j;x<(i+4)&&y>(j-4)&&x<17&&y>0;x++,y--)
{
if(ch[x][y]==ch[x+1][y-1])
m++;
else
break;
}
for(x=i,y=j;x>(i-4)&&y<(j+4)&&x>0&&y<17;x--,y++)
{
if(ch[x][y]==ch[x-1][y+1])
m++;
else
break;
}
if((m+n)>=4) //判断左下右上向
return ch[i][j];
m=0;
n=0;
return 0; //没有结束
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -