- 22
- 0
- 约2.15万字
- 约 37页
- 2023-03-30 发布于浙江
- 举报
五子棋人机对战源代码
#include stdafx.h
#include FiveStone.h
#include FiveKernel.h
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__; #define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
FiveKernel::FiveKernel()
{
const char * readstring[9]={
长连,五,活四,冲四,活三,冲三,活二,
可能为五,不可能为五
};
int ItemNum;
FILE * f;
//read opentable file
f=fopen(openlib.txt,r);
fscanf(f,%3x\n, ItemNum); int j;
for (int i=0;iItemNum;i++){
fscanf(f, %3x: %8x\n, j, OpenTable[i]);
};
fclose(f);
//read valuetable file
f=fopen(valuelib.txt,r); char str1[5], str2[10], str[2][11]; for (i=0;i3281;i++){
ValueTable[i][0]=0;
ValueTable[i][1]=0;
}
for (i=0;i6561;i++){
fscanf(f, %s %s %s %s\n\n, str1, str2, str[0], str[1]);
for (j=0;j2;j++){
for (int k=0;k9;k++){
if (strcmp(str[j],readstring[k])==0){
if (i=3280){
ValueTable[i][j]+=(k+1)*16; //k+1 because value can not be 0
}
if (i=3280){
ValueTable[6560-i][j]+=(k+1);
}
break;
}
}
}
}
fclose(f);
Result=rsNotPlayed;
}
FiveKernel::~FiveKernel()
{
}
bool FiveKernel::NewGame(HARDLEVEL hardlevel, RULE rule)
{
if (Result==rsNotOut){
if (IDYES!=MessageBox(GetActiveWindow(), Are you sure to cancel the curre
nt game?,New game,MB_YESNO)){
return false;
}
}
HardLevel=hardlevel;
Rule=rule;
HandLimit=(rule!=rlNormal); Result=rsNotOut;
int i,j;
//initialize Board
for (i=0;i16;i++){
for (j=0;j16;j++){
Board[i][j]=vlCanBeFive*16+vlCanBeFive;
}
}
StepNum=0;
Turn=tnBlackTurn;
return true;
}
bool FiveKernel::InputChess(POS pos) {
if
((_ValidPos(pos))((Board[pos.x][pos.y]4)=1)(Result==rsNotOut)){
BYTE value=(Turn==tnBlackTurn)?((Board[pos.x][pos.y]4))
:((Board[pos.x][pos.y]0x0f));
if (value==vlHandLimit){
MessageBox(GetActiveWindow(), Invalid chess!,Hand limit,MB_OK);
return false;
}
_GoAStep(pos);
return true;
}else return false;
}
bool FiveKernel::Ou
您可能关注的文档
- 读《教育走向生本》有感.doc
- 压强、浮力复习.doc
- 计算机网络教案.doc
- 计算机网络教案.doc
- 长江三峡+白鹤梁导游词.doc
- 安全生产知识测试题.doc
- 会计专业毕业实习周记范文.docx
- 美术教学策略.doc
- 防震安全教案小学.doc
- 五子棋人机博弈实验报告.doc
- 中国国家标准 GB/T 6675.9-2025玩具安全 第9部分:化学及类似活动的实验玩具.pdf
- 《GB/T 6675.9-2025玩具安全 第9部分:化学及类似活动的实验玩具》.pdf
- GB/T 46975-2025婴童用品 便携式婴儿睡篮技术要求.pdf
- 中国国家标准 GB/T 46975-2025婴童用品 便携式婴儿睡篮技术要求.pdf
- 《GB/T 46975-2025婴童用品 便携式婴儿睡篮技术要求》.pdf
- 《GB/T 6675.14-2025玩具安全 第14部分:指画颜料要求和测试方法》.pdf
- GB/T 6675.14-2025玩具安全 第14部分:指画颜料要求和测试方法.pdf
- 中国国家标准 GB/T 6675.14-2025玩具安全 第14部分:指画颜料要求和测试方法.pdf
- 中国国家标准 GB/T 33772.3-2025质量评定体系 第3部分:印制板及层压板最终产品检验及过程监督用抽样方案的选择和使用.pdf
- 《GB/T 33772.3-2025质量评定体系 第3部分:印制板及层压板最终产品检验及过程监督用抽样方案的选择和使用》.pdf
原创力文档

文档评论(0)