程序编译小试心得.PDFVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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)

文档评论(0)

ldj215323 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档