《算法与程序设计》选修模块教学初探

来源 :中学理科园地 | 被引量 : 0次 | 上传用户:jeremy008
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:比起《信息技术基础》,《算法与程序设计》这门选修课对高一学生来说,更具有挑战性,这也使学生对这门课产生了兴趣。如何带领学生挑战自我,学会编程解决问题呢?笔者认为首先要让学生理解学会编程解题的重要性。接着要从学生熟悉的问题出发,进行算法设计训练,让学生懂得将人工解题的过程描述成算法。教学中还应灵活处理教材,做到分散难点、用到再学,时刻牢记以“问题解决”为主线,精选“问题”以吸引学生兴趣,调动学生进行自主探究学习的积极性。
  关键词:算法;程序设计;教学;问题解决
  
  高中新的课程标准指出,在中学开设《算法与程序设计》课程的主要目的是使学生能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题。我们要解决的问题虽然比较简单,但这对初学《算法与程序设计》的学生来说可是不容易的,有人甚至觉得比数学还难。那么如何做好《算法与程序设计》这门选修课的教学呢?使学生能学得轻松、学得高兴呢?下面就谈一谈一个学期来我的做法。
  
  一、明确学习课程用途,消除学生畏难情绪
  
  在学习本课程前,可能会有比较多的学生认为:人要计算机解决的问题都可以找到相应的软件,为何还要学习编程?针对这个问题,我在第一节课就向学生介绍了我自己工作中遇到的问题:“如何批量添加“Serv-U”用户”。
  例1每年开学时,我都要在服务器上为每个学生开避一个文件夹,并利用“Serv-U”FTP软件为每个学生设置对自己文件夹的使用权限。一个年段600人,每人建一个文件夹、设置权限这些工作少说要花1分钟,600个人要600分钟(10个小时),手工操作工作量大,且容易出错。那么如何解决这个问题呢?
  通过认真分析,我们发现同学们的文件夹可以按班级分类存放,每个同学的文件夹名称也可以设置为“g06??**”这种形式(其中??表示班级,**表示座号),另外,“Serv-U”中的用户配置都保存在一个文本文件中,且用户与权限都很有规律。因此我们可以编写一个程序,一个班一个班地、每个班一个一个同学地进行开辟空间和“Serv-U”的用户权限设置。最后我演示一下我的程序,并简要的解析了一下程序。
  另外,我还结合实例,简要介绍程序设计语言的发展,让学生感受到高级语言比起低级语言是容易学习的,将要学习的VB高级语言是很容易被我们掌握的,从而消除学生对学习这门课的畏难情绪。
  这节课我向学生传递了“编程有用、编程不难”这样的信息,增强了学生学习本门课的兴趣与信心,为本门课的教学打下了一个非常好的基础。
  
  二、让学生理解算法设计重要性,引导学生进行简单问题的算法设计
  
  算法设计是程序设计的核心。多年的程序设计教学经验告诉我们,学生学习这门课的难点就是如何进行设计算法。因此,我在这门课的第2、3节课就着重通过一些简单的例子来让学生懂得算法设计的三种基本结构。
  
  1 实例入手,引导学生认识算法设计
  例2时间转换
  输入一个以秒为单位的时间t,将其转换成x小时节v分钟z秒形式,用自然语言描述算法。
  一开始我们发现,学生对此问题无从下手。于是我们将问题改为“3800秒是几小时几分几秒?”,学生很快算出答案“1小时3分20秒”。究其原因,我觉得学生可能习惯于解决一个具体的数学问题,而不习惯于解决一个带变量的问题。这个恰恰是数学解题与编程解题的一个区别。接下来就让学生说出他们是如何可得出以上的答案,然后引导学生进行归纳,将3800这个数换成t,再让他们尝试说法求法,经过几次进行修改,最后我们得到如下的算法:
  (1)输入以秒为单位的时间t
  (2)求出t整除3600的商x和余数a
  (3)求出a除以60的商v和余数z
  (4)输出x小时v分z秒
  通过这节课,从实例入手,逐步地把人工的解法用精确的方法描述出来。学生明白什么是算法设计,同时让学生明白设计算法中要象数学一样要适当使用记号(即将来要学习的变量)。
  
  2 从学生熟悉的问题出发,进行算法设计训练
  在讲解选择结构问题的算法设计时,我们从学生在初中阶段就知道的“求一元二次方程实根”的问题出发,进行算法设计的训练。
  我们先让学生自己来描述一下“求实根”问题的算法,由于学生对此问题比较熟悉,同时有例2中的顺序结构算法设计的基础和老师点拔,学生很快得出如下的算法描述:
  (1)输入a,b,c
  (2)求DLT=b2-4ae
  (3)如果DLT<0,则输出“无实根”,转(5)
  (4)否则,求两实根x1,x2,输出x1,x2
  (5)结束
  接着我们再分析自然语言描述法的不足,引出流程图描述法,进而用流程图把以上算法描述出来。学生就很容易理解了。
  从学生熟悉的问题入手,进行算法设计的训练,会收到较好的效果。
  
  三、理解可视化编程一般步骤。灵活进行教材的处理
  
  由于我们这门课是要用VB程序设计语言来实现简单问题的编程解决,因此必须让学生对VB可视化编程一般过程有所理解。按教材上的安排,可视化编程是在第三章,而第二章中有“程序的顺序结构”、“程序的选择结构”与“程序的循环结构”等重要教学内容,为了教学上方便,我将第三章的内容简化、提前。重点让学生理解“对象”、“属性”、“事件”、“事件过程”、“事件驱动”等概念以及掌握可视化编程的一般步骤。
  
  四、分散难点,用到再学
  
  在教材中,第二章第1节的主要内容是VB程序的结构、数据类型、变量、常量、运算符、表达式与函数等概念,如果专门花一节课给学生讲解,不仅枯燥而且抽象。对于本部分的教学,我们采取了分散难点、用到再学的策略。因此,我们就跳过这节课。当学习到下一节程序的顺序结构时,我们通过计算“圆面积”这个学生最容易理解的问题,来讲解程序的结构、变量、常量、赋值语句、输入函数和输出方法等。
  这种分散难点、用到再学的策略通过将难点分散到多个任务中,用到再学,它不仅避免了由于难点太多而造成知识混淆的问题,同时又能结合实例,使学生有感性认识,便于难点的理解,收到极好的效果。
  
  五、牢记“问题解决”主线,精选“问题”激发兴趣
  
  编程的目的就是为了解决问题,因此本门课程的教学应牢牢地把握“以问题解决”的主线。对任何一个问题讲解,老师都要严格按照“分折问题”、“设计算法”、“编写程序”、“调试运行”这几个步骤进行,自始至终、潜移默化地培养学生正确的解题流程。当学生也能按照正确的解题过程进行解题,学生才算真正学会独立地编程解题。
  同时,“问题”还是学生学习本门课的动力,好的问题一出现在学生面前,就会让学生跃跃欲试。因此我们在备课时要精选“问题”,从而引导学生思考问题,进而解决问题。
  例如,我在讲授“多分支选择语句”这一节时,选择了“星座计算”这个问题。这个问题是当今学生(特别是女生)比较兴趣的,有了这个程序以后,他们就很容易替任何人测算出星座。于是我就安排学生以小组为单位,先学习课本中有关知识后,然后开始解决星座测算这个问题,看哪个小组设计更好、更快。最后我再对本节课的重点进行小结归纳,总结select case语句中的重点。
  
  六、结束语
  
  一个学期来,大部分同学都能认真完成作业,不少学生的作业不仅正确,而且界面漂亮。同学们上课听讲也较为认真,还经常有同学向我提问。我觉得本学期这门课程的教学基本上是成功的。
其他文献
在急性左心力衰竭的抢救治疗中,在西医抢救措施基础上配合使用生脉注射液可起到加速肺水肿吸收、收敛汗液、减慢心率、稳心安神、缩短抢救时程、提高抢救成功率的作用,疗效稳
摘要:本文通过对新课标下初中体育与健康评价方法的实践与思考,旨在探讨对学生体育教育与健康学习进行科学全面、公正的评价,以利于正确引导教师教学的方向、调控教学过程,从而激发学生学习的热情,提高学生学习的实效性,全面有效地促进学生健康成长。  关键词:新课标;体育与健康;评价方法;实践与思考    引言    体育与健康的评价是新一轮基础教育改革的重点内容。体育教师作为主要参与者必须明确:新的课堂教学
实验在物理学的研究中具有重要的意义,物理概念是观察、实验与科学思维的产物,物理规律是用实验归纳和理论演绎这两种方法发现的,因此在物理教学中实验的作用是举足轻重的,它应该贯穿整个教学过程。传统的教学由于迎合升学的需要,片面提高学生的解题能力,学生动手实验的机会少,从而导致动手操作的能力差。1990-1995年间国家教委仪器研究所对一万余名学生进行实验能力测试,结果我国中小学生实验动手能力几乎不及格。
著名的科学家爱因斯坦曾说“兴趣是最好的老师”,强调了兴趣在学习中的作用。根据很多有关专家的研究表明,只有学生感兴趣的东西,他才乐意学。只要乐意学就会有主动性,就能不怕困难的把它学好。兴趣对于学习数学非常重要。数学知识内容多,而且又分成代数、几何、统计等方面知识,有的比较抽象,有的注重计算,有的注重逻辑推理,有的注重应用。因此,要激发并继续保持学生学习数学的兴趣就更加困难,在平时的教学过程中,发现很
摘要:在课堂教学中,使不同层次的学生获得基础知识、基本技能,建立数学知识系统结构,提高其抽象概括能力和思维能力,形成一定的分析问题、解决问题的方法,促进其创新意识的形成,有赖于教师课堂教学设计。设计的内容应当包括:总体教学思路,教学的主要目标,教学任务分析,教学活动的组织形式,实现教学目标的策略方法和步骤,检测和评估等方面。  关键词:新理念;初中数学;教学设计    随着数学课程改革不断深化,新
从1984年-1996年治疗十二指肠损伤19例,其中并发十二指肠瘘5例,胃大部切除或穿孔修补术后并发的十二指肠瘘7例,共计26例。认为:(1)早期诊断,早期十二指肠减压或转流是预防十二指肠瘘的关键;(2)术中不仔细
创伤评分法是对伤员伤情严重程度评定的标准方法,准确评估创伤的严重度、提高创伤抢救的成功率是创伤外科工作者的一项重要课题。评价470例高原地区多发伤虱的伤情,全组死亡率6.81%,ISS16分以
教学活动顺利进行的最低要求是教师与学生的相互沟通。从信息论的角度看。这种沟通包括数学信息的传递、接受、加工的动态过程。在这个过程中。离开了学生的参与,整个过程也就
摘要:本文从小组合作学习、学习习惯培养、多元智能的借鉴与培育三个方面阐述了如何在计算机教学中提高课堂有效性。  关键词:课堂有效性:良好学习习惯:小组合作:师生互动:多元智能    苏霍姆林斯基曾说过“如果学生在掌握知识的道路上,没有迈出哪怕是小小的一步,那对他来说,这是一堂无益的课。无效的劳动是每个教师和学生都面临的最大的潜在危险”。“计算机”是一门实用性很强的学科,需要学生动手实践才能学好。学
在传统教学过程中,多数人只倾心于认知技能的目标制定和实施,适当涉及能力和方法目标,而把情感、态度、价值观目标看得可有可无。这种倾向产生的根源在于急功近利的应试教育思想,以为能力、方法、情感、态度、价值观目标不重要,难把握。且时效性又不显著。这些做法和认识培养出的是高分低能、人格不完善的学生。是违背学生身心发展的教育。中国人民大学社会调查所有一份关于普通高中教育质量调查报告。  由此观之,健全的心理