当前位置:首页 > 工作计划 > 递归算法数字游戏教学软件的设计|java递归算法经典实例
 

递归算法数字游戏教学软件的设计|java递归算法经典实例

发布时间:2019-02-07 03:41:59 影响了:

  摘 要 递归算法是数学和计算机科学中非常重要的一个概念,也是教学中的一个难点。设计一款以汉诺塔为道具的数字教学游戏,旨在帮助学习者在愉悦的过程中体会和理解递归算法。   关键词 递归算法;汉诺塔;数字游戏;教学软件
  中图分类号:G436 文献标识码:B 文章编号:1671-489X(2011)36-0097-02
  Design of Recursive Algorithm Digital Instructional Game//Zhang Chenggong, Liu Xiaoying, Li Weimin
  Abstract Recursive algorithm is a very important conception of mathematics and computer science. However, it is much difficult for students to understand. The article designs and develops a digital instructional game which students interested in to help students understand the recursive algorithm.
  Key words recursion; Hanoi tower; digital game; educational software
  Author’s address The College of Education Science and Technology of Shanxi Datong University, Datong, Shanxi, China 037009
  
  近年来涌现出许多游戏软件,它们给学习者提供了一个形象生动的虚拟空间,学习者可以自己进行具体的操作,非常具有吸引力。但是它们缺乏具体的教育目的,使家长及教师觉得学习者花大量时间玩游戏是浪费时间。因此设计出一款有趣的以汉诺塔为道具的数字游戏教学软件,实现教育性与游戏性的完美结合,让学习者在玩中学,起到寓教于乐的作用。
  1 理论基础
  递归算法数字游戏教学软件,主要用递归的思想解决“汉诺塔”的问题,使学习者真正掌握递归算法。
  1.1 递归问题
  在函数或子过程的内部,直接或者间接地调用自己的算法称为递归算法。递归算法的实质就是把原问题转化为规模缩小的同一类型的子问题,然后用递归调用函数来求解。在数学和计算机科学中可以使用递归思想解决多种复杂的问题,从而节省大量的时间。
  递归有3个重要的性质:1)有明确的递归结束条件;2)随着递归调用,原问题转化为规模较小的同类型问题;3)随着递归调用,最终能达到递归结束条件。
  1.2 汉诺塔问题
  古代有一个梵塔,塔内有3个座A、B、C,A座上有64个盘子,盘子大小不相等,大的放在下面,小的放在上面。一个老和尚要把这64个盘子移到C上,每次只移动1个盘子,在移动过程中总要保持小盘子在上面。
  【移动过程】有3个分别称为A、B、C的塔,在A塔上从上到下插有n个直径从小到大的圆盘,编号为1、2…n-1、n。现在要把A上的n个盘移到C上,从上到下还是1、2…n-1、n。规定在移动的过程中可以把盘插到A、B、C上,但一次只能移动一个盘,并且大盘不能压在小盘上。
  汉诺塔问题的分析:
  当n=1时,A-1-C;
  当n=2时,A-1-B,A-2-C,B-1-C;
  当n=3时,A-1-C,A-2-B,C-1-B,A-3-C,B-1-A,B-2-C,A-1-C;
  当n=4时,A-1-B,A-2-C,B-1-C,A-3-B,C-1-A,C-2-B,A-1-B,A-4-C,B-1-C,B-2-A,C-1-A,B-3-C,A-1-B,A-2-C,B-1-C。
  经过仔细分析后可以得出:只有一个盘子时从A直接移到C,有n(n>1)个盘子时,先借助C把n-1个盘子移到B,然后把第n个盘子从A直接移到C,再借助A把n-1个盘子移到C,从而做完所有的工作。
  2 递归算法数字游戏教学软件的设计
  本游戏以初中信息技术中递归算法为设计依据,结合学习者的学习特征,以“汉诺塔”为题材,设计出趣味性、教学性及人机交互性为一体的数字游戏教学软件。
  2.1 总体设计
  游戏型教学软件主要是在学习的过程中增加适当的游戏要素以提高学习者的学习动机的应用软件,它的主要特点为趣味性、教学性及竞争性。游戏型教学软件在改善学习者的学习环境方面应有很大的作用。同时,在设计游戏型教学软件时,应该加入教学目标、游戏的趣味性和游戏目标三方面的设计。
  递归算法数字游戏教学软件的总体框架如图1所示。
  递归算法数字游戏教学软件流程图如图2所示。
  本软件简单,易操作,情节设计合理,难易适中,且不断有奖励的刺激,不至于使学习者产生厌烦情绪。借助递归算法数字游戏教学软件进行教学,利用游戏软件的交互性强、竞争性、立即反馈等特点,使学习者在玩的过程中体会、领悟到递归的过程,通过进一步的引导,从而使学习者理解、掌握递归算法。
  2.2 详细设计
  游戏型教学软件的设计要突出主题,能够激发学习者的兴趣。目前国内的大多数游戏型教学软件都是练习型软件,在教学中应用这些软件,可能会缺乏趣味性。本软件从进入部分、说明部分、游戏部分一直到结束部分都经过精心的设计,因此整个游戏过程中都十分有趣。
  1)游戏说明。游戏规则对于一个游戏来说是至关重要的。学习者必须知道怎么玩才会对其产生兴趣,并且在游戏规则中必须告诉玩者在玩的过程中应该注意的事情。本软件游戏规则方面主要告诉学习者3点:一是一次只能移动一个盘子;二是每个柱子上都始终是大盘在下,小盘在上;三是把左边柱子上的盘子借助中间的柱子移到右边的柱子上。汉诺塔游戏型教学软件的教学目的是让学习者理解掌握递归算法。在游戏说明中告诉学习者移动最少的步骤为2n-1(n为选择的塔层数)。
  2)选择塔层数。游戏者对一个游戏的情绪投入与一个游戏的难易程度和游戏者的胜负有一定的关系。因此,汉诺塔设计的盘数为3~9。3~6盘实现比较容易,多次胜利可以更好地激发学习者的学习动机,同时还可以发现盘子的个数和首次移动的位置关系的规律,有利于继续探索性的操作。7~9盘稍微复杂一些,细节会增多,保证游戏者运用正确的知识和技能达到游戏目标,而不是靠运气,并且学习者通过复杂的、反复的移动,可以更好地理解递归算法的实质内容。
  3)游戏界面。当游戏者选择塔数进入游戏界面,就可以真正开始“玩”游戏,同时为学习者显示出他移动的步数以及剩余时间。在玩的过程中伴随优美的音乐会有各种有趣的小动画出现,以提示学习者盘子放的是否为最优位置。游戏主界面如图3所示。
  4)反馈。在游戏规定的时间结束之后,没有完成一定的任务,就会出现“时间耗尽”的反馈,游戏结束,学习者可以重新开始。假若学习者在规定的时间内完成特定的任务,则会出现“成功”的反馈,并有一些鼓励动画,且提示学习者玩更高一级。
  3 结束语
  传统的教学大都是灌输式的,比较枯燥沉闷,很难让学习者发挥主观能动性,乐于学习。但是,游戏型教学软件为学习者提供了一个充满生机活力的轻松的学习环境,使学习者在玩游戏的同时通过自己的智慧获得特定的知识,减轻学习者的压力,极大地激发学习者的积极性,使他们在快乐中学习,真正达到寓教于乐的目的。
  参考文献
  [1]常跃.汉诺(Hanoi)塔递归算法的教学研究[J].云南电大学报,2005,7(1):62-64.
  [2]蔡进,赵呈领.浅谈我国教育游戏的现状、问题及开发原则[J].教育信息化,2005(14):45-46.
  [3]Gross B. Digital Games in Education: The Design of Games-Based Learning Environments[J].Journal of Research on Technology in Education,2007,40(1):23-38.

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3