ImageVerifierCode 换一换
格式:DOCX , 页数:116 ,大小:37.28KB ,
资源ID:14010559      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/14010559.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(中国象棋Delphi版本程序代码Word文件下载.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

中国象棋Delphi版本程序代码Word文件下载.docx

1、 Label2: Label3: BitBtn1: TBitBtn; BitBtn3: Label4: s1: N1: N2: N3: N4: N5: N6: N7: N8: GroupBox1: TGroupBox; PaintBox2: BitBtn2: BitBtn4: BitBtn5: BitBtn6: GroupBox2: Memo1: TMemo; BitBtn7: N9: N10: N11: N12: N13: RadioGroup1: TRadioGroup; RadioGroup2: procedure FormCreate(Sender: TObject); procedu

2、re PaintBox1Paint(Sender: procedure NewGame1Click(Sender: procedure Eixt1Click(Sender: procedure CrossPaint(x,y,i,j:integer); /自定义画兵格过程 procedure PaintBox1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure FindDrop(NowR,NowC: /扫描可以走棋的点过程 procedure PaintCMo

3、veDrop(); /画出可走点过程 procedure WhoWin(); /判断输赢过程 procedure IsNextWin();/判断是否将军 procedure RemHistory();/走棋记录 procedure RepentChess(n: procedure FindAGoodMove(); /寻找一个优秀的走法 procedure AddPoint(row,column:/加入一个相关点 function Eveluate(nSide:integer):integer;/估值函数 function Eveluate1(nSide:/测试估值函数 function Get

4、RelatePiece(row,column:/枚举一个位置上棋子所有相关的点 function GetBingValue(row,column:/为兵返回附加值 /创建可能的走法 nPly记录扫描的层数,nSide记录到那边走棋 0为红方,1为黑方 function CreatePossibleMove(nPly,nSide: function MakeMove(depth,n:/猜想过程中生产一个新局面 procedure UnMakeMove(depth,n,nChessID: /猜想过程中根据走法恢复一个棋盘 function IsGameOver(depth:/猜想过程中判断给定局面

5、是否结束 function AddMove(FormR,FormC,ToR,ToC,nPly:/在nMoveList中插入一个走法 function NegaMax(depth: /深度优先搜索负极大技校 function Alpha_Beta(depth,alpha,beta:/Alpha-Beta搜索算法 function ChessMoveLaw(NowR,NowC,ToR,ToC,nChessID:boolean; /走棋规则函数 function ChessMoveLawPos(NowR,NowC,ToR,ToC,nChessID: /猜想过程走棋规则函数 function CanT

6、ouch(NowR,NowC,ToR,ToC,nChessID:/判断能不能到达目标点 function ChessPutLaw(NowR,NowC,ToR,ToC: /摆起规则函数 function ChessMove(NowR,NowC,ToR,ToC: /走棋函数 function AIChessMove(NowR,NowC,ToR,ToC: /电脑走棋 procedure BitBtn1Click(Sender: procedure FormPaint(Sender: procedure BitBtn3Click(Sender: procedure N3Click(Sender: pr

7、ocedure N2Click(Sender: procedure N6Click(Sender: procedure N7Click(Sender: procedure PaintBox2Paint(Sender: procedure N8Click(Sender: procedure PaintBox2MouseDown(Sender: procedure BitBtn5Click(Sender: procedure BitBtn4Click(Sender: procedure BitBtn2Click(Sender: procedure BitBtn6Click(Sender: proc

8、edure BitBtn7Click(Sender: procedure N11Click(Sender: procedure N12Click(Sender: procedure N13Click(Sender: private Private declarations public Public declarations end;var Form1: TForm1;/棋盘格子单位大小mBit:/棋子数组:所有棋子的数值mChess: array1.14 of string =(车,马相士帅炮兵車馬象仕将卒);/=棋子价值=/棋子的基础价值m_BaseValue: array1.14 of

9、integer=(500,350,250,250,10000,370,100,500,350,250,250,10000,370,100);/棋子灵活度基础价值m_Flexible:array1.14 of integer=(6,12,1,1,0,6,15,6,12,1,1,0,6,15);/每一个位置上的棋子的灵活性 即可走步数m_FlexibleNum:array1.10,1.9of integer;/每一个位置被威胁的信息m_AttackNum:/每一个位置被保护的信息m_GuardNum:/每一个棋子是总价值m_ChessValue:/红兵附加值矩阵mBing:array1.10,1.9of integer=(0,0,0,0,0,0,0,0,0),(90,90,110,120,120,120,110,90,90),(70,90,110,110,110,110,110,90,70),(70,70,70,70,70,70,70,70,70),(0,0,0,0,0,0,0,0,0)/黑卒附加值矩阵mZhuzi:/=棋子

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1