- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序编译小试心得
许可复制
著作权人姓名: 孙璐静
序编译小试心得
市西中学 孙璐静 指导老师 王 琰
数组这个概念,在各种编程语言中都有出现。数组,简而言之,就是将一连
串数字聚集在一起,形成组这个概念。数组在实际中有非常广的应用面。比如我
们要收集高二某班同学46 的数学成绩,我们可以定义一个LA 数组,在这个数组
中按一定规律存放每个人的成绩。LA(1)可以代表 1 号同学,而放在 LA(1)中的
值即为 1 号同学成绩,如此类推,非常直观,简洁。TI 中也引入了数组这个概
念,虽然与别种语言比较只有一维,但是TI 提供了升序,降序,合并等功能,
使数组的应用更加灵活。
我尝试用数组的概念去做五子棋。做五子棋的程序,最基本的是要判断棋子
在棋盘上的位置关系,是否不间断地连成一线(以下简称“连成一线”)。首先判
断最基础的五子连线。我第一个想法是将连成一线的棋子的坐标存入数组,当数
组个数超过5 是,一方获胜。那如何做到这一点呢?一开始,我利用循环找出每
一个棋子与其它棋子之间的位置关系,从而判断此子是否有可能与别的棋子连成
一线。但我之后发现,若用这种思路去编程,资源耗费很大。因为 1,一些棋子
很有可能没有任何价值,找出没有 义的棋子与别的棋子的位置关系更无 义。
2 随着游戏不断进行,双方旗子越来越多,判断次数越多,循环次数越多,运行
速率必将大大降低。经过几天的思考,我发现我既然想要寻找是否有可能有 5
个棋子相连,我首先应目标明确地找到两个相临的棋子。在这个条件保证的基础
上,我将两个棋子x 值,y 值分别相减,找出两棋子是竖直,水平,还是斜向的
关系。然后以这两个棋子为核心,根据位置关系向两端延伸,顺藤摸瓜寻找在一
线上的一方旗子。这种思路,由于先筛选出有一定价值的棋子,因此有较高的效
率。
五子棋的基础是五子连线。但为进一步完善程序,我又继续考虑判断划四,
三划三的方法。基本思路依旧是由中间向两端扩张。但是这两种情况必须保证最
外端任一棋子的旁边不能被敌子封住。所以还必须另增一个循环,确保两端无敌
子。三划三的判断是个更为烦琐的过程。在判断的过程中,程序所找到的两组三
划三的棋子允许有相同,但不能完全雷同。一开始,我的做法是将第一组划三的
x 值存入LA 中,y 值存入LB 中,再将第二组划三的x 值存入LC 中,y 值存入LD
中。我的想法是当两对数组所代表的两对子相同时,经过升序排 ,每对数组对
应位置上的值应相等。于是,我根据此进行判断。但是,经几次调试,却发现有
时成功有时失败。当一方的棋子类似图一分布时,程序运行成功,但是若呈图二
分布时,程序运行失败。
(图一) (图二)
(中间棋子的坐标为原点(0,0),棋子所在直线的间距为0.5)
我分别对两种情况进行分析
LA(-0.5,0,0.5) SORTED(LA)
LA(-0.5,-0.5,-0.5) SORTED(LA) LA(-0.5,0,0.5) SORTED(LA)
LA(-0.5,-0.5,-0.5) SORTED(LA)
LA(-0.5,-0.5,-0.5)
LA(-0.5,-0.5,-0.5) LA(-0.5,0,0.5)
LA(-0.5,0,0.5)
LC(-0.5, 0, 0.5) SORTED(LC)
LC(-0.5, 0, 0.5) SORTED(LC)
LC(-0.5, 0, 0.5) SORTED(LC)
LC(-0.5, 0, 0.5) LC(-0.5, 0, 0.5) SORTED(LC)
LC(-0.5, 0, 0.5)
LB(1 0.5 0) SORTED(LB)
LB( 1 0.5 0) SORTED(LB)
您可能关注的文档
最近下载
- 变电设备检修工职业认证隔离开关主刀闸工作原理GW23B-126型隔离开关说明书.pdf VIP
- QB1696-1993啤酒麦芽附录A比重与浸出物含量对照表.pdf VIP
- 《先兆流产》课件.ppt VIP
- (2025秋新版)部编版二年级语文上册全册PPT课件.pptx
- 清洁设备操作及日常保养标准作业规程.doc VIP
- 2025年高中政治必修同步课时练 必修一 第一课 周练过关(一).pdf VIP
- 2025年中考备考:人教版九年级物理上册全书课后练习答案.docx VIP
- 班级卫生值日表模板.xlsx VIP
- 深基坑开挖及支护施工专项方案.doc VIP
- 学习2025《初中生自我介绍》专题课件ppt.pptx VIP
文档评论(0)