• 大小: 3.71MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-27
  • 语言: 其他
  • 标签:

资源简介

简单的五子棋人人对弈程序,可判定禁手,可保存棋局

资源截图

代码片段和文件信息

// Dep.cpp: implementation of the CDep class.
//
//////////////////////////////////////////////////////////////////////

#include “stdafx.h“
#include “wzq.h“
#include “Dep.h“
#include 

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif


//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CDep::CDep()
{
for(int i = 0;i < BOARD_ROW;i ++)
for(int j = 0; j < BOARD_ROW; j ++)
position[i][j] = NO_PIECE;
nStepNum = 0;
bRead = 0;
}

CDep::~CDep()
{

}

void CDep::Restart()
{
for(int i = 0;i < BOARD_ROW;i ++)
for(int j = 0; j < BOARD_ROW; j ++)
position[i][j] = NO_PIECE;
nStepNum = 0;
}

int CDep::GetStepNum() const
{
return nStepNum;
}

int CDep::GetPositionType(int iint j) const
{
return position[i][j];
}

void CDep::GainStepNum() 
{
nStepNum++;
}

bool CDep::bPointExist( CPoint ptBoard ) 
{
if( position[ ptBoard.x ][ ptBoard.y ] != 0 )
return true;
else
return false;
}

bool CDep::GetbRead()
{
return bRead;
}

void CDep::SetbRead( int bSet )
{
bRead = (bool)bSet;
}



void CDep::RecordPro(CPoint ptBoard int nBlackOrWhite) 
{
process[nStepNum].x = ptBoard.x;
process[nStepNum].y = ptBoard.y;
process[nStepNum].color = nBlackOrWhite;
nStepNum ++;
}


void CDep::RecordPos(CPoint ptBoard int nBlackOrWhite)
{
position[ptBoard.x][ptBoard.y] = nBlackOrWhite;
}


void CDep::Retract()
{
nStepNum -- ;
if(nStepNum >= 0)
position[ process[nStepNum].x ][ process[nStepNum].y ] = 0;

}

void CDep::StoreMyBoard()
{

}

void CDep::ResumeMyBoard()
{
}

bool CDep::bEnd() //判赢功能
{
CPoint pt ;
pt.x = process[nStepNum - 1].x;
pt.y = process[nStepNum - 1].y;
int ptColor = process[nStepNum - 1].color;

int link = 0;
int i = 0 j = 0;

//竖行判赢
for( i = pt.x - 1; i >= 0; i--)
{
if( position[ i ][ pt.y ] == ptColor )
link ++;
else
break;
}

for( i = pt.x + 1; i < BOARD_ROW ;i++ )
{
if( position[ i ][ pt.y ] == ptColor )
link ++;
else
break;
}

if( link >= 4 )
return true;
else
link = 0;

//横行判赢
for( j = pt.y - 1; j >= 0 ; j--)
{
if( position[ pt.x ][ j ] == ptColor )
link++;
else
break;
}

for( j = pt.y +1; j  {
if( position[ pt.x ][ j ] == ptColor )
link++;
else
break;
}
if( link >= 4 )
return true;
else
link = 0;

//捺判赢
for( i = pt.x-1 j = pt.y-1; i >= 0 && j >= 0; i-- j-- )
{
if( position[ i ][ j ] == ptColor )
link++;
else
break;
}

for( i = pt.x+1 j = pt.y+1; i {
if( position[ i ][ j ] ==ptColor )
link++;
else
break;
}

if( link >= 4 )
return true;
else
link = 0;

//撇判赢
for( i = pt.x-1 j = pt.y+1; i>= 0 && j < BOARD

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      20482  2009-08-28 19:07  wzq\Debug\Dep.obj

     文件          0  2009-08-28 19:07  wzq\Debug\Dep.sbr

     文件       9927  2009-08-21 13:04  wzq\Debug\GameEnd.obj

     文件          0  2009-08-21 13:04  wzq\Debug\GameEnd.sbr

     文件      20376  2009-08-28 19:11  wzq\Debug\MainFrm.obj

     文件          0  2009-08-28 19:11  wzq\Debug\MainFrm.sbr

     文件     105502  2009-08-21 13:04  wzq\Debug\StdAfx.obj

     文件    1374935  2009-08-21 13:04  wzq\Debug\StdAfx.sbr

     文件     246784  2009-08-28 19:11  wzq\Debug\vc60.idb

     文件     380928  2009-08-28 19:11  wzq\Debug\vc60.pdb

     文件    5497856  2009-08-28 19:11  wzq\Debug\wzq.bsc

     文件     139368  2009-08-28 19:11  wzq\Debug\wzq.exe

     文件     365192  2009-08-28 19:11  wzq\Debug\wzq.ilk

     文件      22644  2009-08-21 13:04  wzq\Debug\wzq.obj

     文件    6869428  2009-08-21 13:04  wzq\Debug\wzq.pch

     文件     484352  2009-08-28 19:11  wzq\Debug\wzq.pdb

     文件       7136  2009-08-28 19:08  wzq\Debug\wzq.res

     文件          0  2009-08-21 13:04  wzq\Debug\wzq.sbr

     文件      17512  2009-08-21 13:04  wzq\Debug\wzqDoc.obj

     文件          0  2009-08-21 13:04  wzq\Debug\wzqDoc.sbr

     文件      54277  2009-08-28 19:11  wzq\Debug\wzqView.obj

     文件          0  2009-08-28 19:11  wzq\Debug\wzqView.sbr

     文件      13741  2009-08-27 20:57  wzq\Dep.cpp

     文件       1118  2009-07-02 15:47  wzq\Dep.h

     文件       1006  2009-06-29 00:10  wzq\FileSave.cpp

     文件       1239  2009-06-29 00:10  wzq\FileSave.h

     文件        925  2009-06-30 18:48  wzq\GameEnd.cpp

     文件       1164  2009-06-30 18:48  wzq\GameEnd.h

     文件       2506  2009-08-28 19:11  wzq\MainFrm.cpp

     文件       1478  2009-08-28 19:09  wzq\MainFrm.h

............此处省略34个文件信息

评论

共有 条评论

相关资源