• 大小: 1.13MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-13
  • 语言: C/C++
  • 标签: 五子棋  人机  

资源简介

用C++实现的五子棋人机对战,接口定义得相当清晰,用户可自己优化算法,来加强电脑的能力.

资源截图

代码片段和文件信息

//*******************************************************************************
// COPYRIGHT NOTES
// ---------------
// This source code is a part of Renju which is an example of .
// You may use compile or redistribute it as part of your application 
// for free. 
// You cannot redistribute sources without the official agreement of the author. 
// If distribution of you application which contents code below was occured place 
// e-mail  on it is to be appreciated.
// This code can be used WITHOUT ANY WARRANTIES on your own risk.
// 
// Spring Wang 

// ---------------
// 版权声明
// ---------------
// 本文件所含之代码是《人机博弈程序设计指南》的范例程序五子棋的一部分
// 您可以免费的使用 编译 或者作为您应用程序的一部分。 
// 但,您不能在未经作者书面许可的情况下分发此源代码。 
// 如果您的应用程序使用了这些代码,在您的应用程序界面上 
// 放入 e-mail  是令人欣赏的做法。
// 此代码并不含有任何保证,使用者当自承风险。
// 
// 王小春 
//*******************************************************************************


// Eveluation.cpp: implementation of the CEveluation class.
//
//////////////////////////////////////////////////////////////////////

#include “stdafx.h“
#include “renju.h“
#include “Eveluation.h“
#include “math.h“

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

int PosValue[GRID_NUM][GRID_NUM]=
{
{000000000000000}
{011111111111110}
{012222222222210}
{012333333333210}
{012344444443210}
{012345555543210}
{012345666543210}
{012345676543210}
{012345666543210}
{012345555543210}
{012344444443210}
{012333333333210}
{012222222222210}
{011111111111110}
{000000000000000}
};





//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CEveluation::CEveluation()
{
}

CEveluation::~CEveluation()
{
}

int count=0;
int CEveluation::Eveluate(BYTE position[][GRID_NUM] BOOL bIsBlackTurn)
{
int i j k;
BYTE nStoneType;
count++;
memset (TypeRecordTOBEANALSIS GRID_COUNT*4*4);
memset (TypeCount0 40*4);
for (i=0; i for (j=0; j {
 if (position[i][j] != NOSTONE) 
 {
if (TypeRecord[i][j][0] == TOBEANALSIS)
AnalysisHorizon(position i j);
if (TypeRecord[i][j][1] == TOBEANALSIS)
AnalysisVertical(position i j);
if (TypeRecord[i][j][2] == TOBEANALSIS)
AnalysisLeft(position i j);
if (TypeRecord[i][j][3] == TOBEANALSIS)
AnalysisRight(position i j);
 
 }

}

for (i=0; i for (j=0; j for (k=0; k<4; k++)
{
nStoneType = position[i][j];
if (nStoneType != NOSTONE)

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

     文件       1531  2002-06-09 02:22  renju\chess.clw

     文件       5540  2002-05-20 07:26  renju\chess.dsp.bak

     文件       1760  2002-06-09 06:03  renju\chess.plg

     文件       4078  2008-09-25 14:21  renju\Debug\BuildLog.htm

     文件      20294  2008-09-25 14:21  renju\Debug\Eveluation.obj

     文件      15744  2008-09-25 14:21  renju\Debug\Eveluation.sbr

     文件      12696  2008-09-25 14:21  renju\Debug\HistoryHeuristic.obj

     文件       4541  2008-09-25 14:21  renju\Debug\HistoryHeuristic.sbr

     文件       7760  2008-09-25 14:21  renju\Debug\MoveGenerator.obj

     文件       4502  2008-09-25 14:21  renju\Debug\MoveGenerator.sbr

     文件      18017  2008-09-25 14:21  renju\Debug\NegaScout_TT_HH.obj

     文件       8451  2008-09-25 14:21  renju\Debug\NegaScout_TT_HH.sbr

     文件      19660  2008-09-25 14:21  renju\Debug\NewGame.obj

     文件       3559  2008-09-25 14:21  renju\Debug\NewGame.sbr

     文件      98304  2008-09-25 14:21  renju\Debug\renju.exe

     文件      16438  2008-09-25 14:21  renju\Debug\renju.obj

     文件       3068  2008-09-25 14:21  renju\Debug\renju.res

     文件       8554  2008-09-25 14:21  renju\Debug\renju.sbr

     文件      43237  2008-09-25 14:21  renju\Debug\renjuDlg.obj

     文件      12671  2008-09-25 14:21  renju\Debug\renjuDlg.sbr

     文件      10613  2008-09-25 14:21  renju\Debug\SearchEngine.obj

     文件       4801  2008-09-25 14:21  renju\Debug\SearchEngine.sbr

     文件     281925  2008-09-25 14:21  renju\Debug\StdAfx.obj

     文件    2122320  2008-09-25 14:21  renju\Debug\StdAfx.sbr

     文件      13829  2008-09-25 14:21  renju\Debug\TranspositionTable.obj

     文件       4724  2008-09-25 14:21  renju\Debug\TranspositionTable.sbr

     文件     355328  2008-09-25 14:21  renju\Debug\vc70.idb

     文件    1028096  2008-09-25 14:21  renju\Debug\vc70.pdb

     文件       1611  2002-06-13 06:45  renju\define.h

     文件      13883  2002-06-14 04:08  renju\Eveluation.cpp

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

评论

共有 条评论