卡西欧杯全国高中数学图形计算机应用能力论文-打地鼠文章.doc

卡西欧杯全国高中数学图形计算机应用能力论文-打地鼠文章.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业论文毕业设计开题报告论文报告设计报告可行性研究报告

“卡西欧杯”2012年全国高中数学图形计算器应用能力测试 【自选命题论文】 打地鼠 机型:fx-cg20 作者:许德安 指导老师:曾宪春 学校:南师附中江宁分校 【研究目的】 利用图形计算器的编程功能,来制作一个“打地鼠”类型的小游戏,从而深入了解图形计算器的编程功能,巩固高中数学必修三中伪代码的学习并熟练运用伪代码,开发计算器的多种功能,以及开发学生对数学学习以及计算器使用的兴趣。 效果如下图显示。 标准版打地鼠 菜单 加强版打地鼠(等级、连击等功能) 【研究计划】 1、构思程序的基本结构、框架 2、设计程序的各个模块 3、将模块整理结合 4、调试程序和改进程序 5、总结反思 【研究步骤】 第一步:设计程序框架 首先我们要了解程序的目的。“打地鼠”游戏采用的是在屏幕上打印图案,玩家进行相应按键以获取分数。游戏设计的终止信号是时间,由分数来作为玩家的最终成绩。 所以,我们将程序分为以下几个模块: 模块1:程序初始化 模块2:生成图案 模块3:按键判定和按键执行 模块4:分数和时间的结算与显示 模块5:程序的终止 额外模块:菜单的制作 我们采用计算器上的1-9这九个按键作为“地鼠”的“洞口”,0键作为菜单呼出键。 第二步:各版块的制作 由于程序的初始化涉及到程序的各个部分,所以放到最后制作 生成图案 我们要先确定“地鼠”的种类,作者在这里设计为4种,分别是“○”,“●”,“■”和“※“分别对应着空位置,小加分,大加分,扣分。下面我们进行代码的编写。 1、首先要确定打印图案的按键即位置 Randomint(1,9)→A ’A即为所需要进行按键的数字 2、确定图案的种类 Random#→B ’B用来控制生成图案的种类 之所以采用0到1随机数而不是1到3的随机数,是为了在下面的设计中可以控制各种图案的生成概率。(为了使程序结构清晰,所以进行缩进,在计算器中是不需要的) If BC ‘C用来控制“■“的出现概率 Then ”■ ”→Str 1 ’Str 1用来存储需要打印的图案 3→G ’G即goal 用来存储图形的分数 Else If BD ’D用来控制“●“的出现概率 Then ”● ”→Str 1 1→G Else If BE ’E用来控制“※“的出现概率 Then ”※ ”→Str 1 -5→G Else ”○ ”→Str 1 ’如果条件均不满足,则打印空位置 0→G If End If End If End 下面进行图形的打印,首先要确定图形的坐标。作者设计为纵坐标分别为2,5,8;横坐标分别为2,4,6。所以要建立一个函数关系,使得通过目标按键的值确定它的位置。 3*((A-1) Rmdr 3)+ 2→X 6 - 2 * ((A - 1)Int÷ 3)→Y Locate X,Y,Str 1 这样,就在相应的位置生成了我们所需要的图案。 最后进行分数的赋值,为方便设计,分数将赋给所指向按键在计算器上对应的字母。因为计算器中不提供数组功能,所以我们进行多次判定来实现。 If A=1 Then G→U ’将图案的分数赋值到按键所对应的字母上进行保存 Ifend 再将1递推为2-9以及对应按键上的字母。 这样就完成了图案的生成和相应分数的赋值 按键判定和按键执行 我们利用计算器中的Getkey来进行按键读取 Getkey→r 再进行按键的判定 If r=72 Then U + H→H ’H即总分,将玩家按键锁对应的分数加到总分上 0→U ’赋值结束后,将这个按键上的分数还原为0 Locate 2,6,”○” ’按键结束后,将这个位置的图案清楚 Ifend 0→r ’按键执行后,将按键变量归零 再将这段代码递推到2-9以及按键上对应的字母和位置。就完成了按键判定和按键执行。 分数和时间的结算与显示 分数的结算已经在上一步基本完成了,这里还需要进行的是负分数判定,因为负分数会对程序造成许多不必要的影响,而且打击玩家自信心 If H 0 Then 0→H Ifend Locate 14,6,H 时间的结算则比较麻烦。计算器没有提供计时器,所以我们采用一种最简单的办法,通过调试来得到每一次循环的时间,从而达到计时的效果。时间可以采用倒计时和正计时,作者在这里采用倒计时。 在作者的计算器上测试后得到这个循环时间约为0.19s T - 0.19→T 再将时间显示在屏幕上 Locate 14,4,Int T ’若直接显示T

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档