《小学程序设计竞赛辅导初探.doc》由会员分享,可在线阅读,更多相关《小学程序设计竞赛辅导初探.doc(8页珍藏版)》请在三一办公上搜索。
1、小学程序设计竞赛辅导初探【摘要】在小学阶段,结合信息技术课程,开展程序设计竞赛辅导,是我培养小学生信息素养,并快速提高的另一种探索。本文结合小学生特点,以及我的辅导经验从几个方面进行初步探究,总结了程序设计竞赛辅导过程中,应增强入门的趣味性、应重视学生思维能力和学习习惯的培养,应积极组建互动型学习团队等辅导策略。【关键词】程序设计、竞赛辅导 互动型开展信息技术竞赛辅导活动,培养计算机英才,是小学计算机教学的延续和深化,也是青少年科技活动的一个重要组成部分。为了推动普及,我校以社团的形式开设了程序设计辅导小组。在开展辅导的过程中,我发现:起初,有不少学生冲着电脑而来,对程序设计充满好奇,兴趣盎然
2、,然而随着教学的深入、难度的增加,他们开始退缩甚至逃避。因此,我一直在思考和探索:如何让枯燥乏味的程序设计变得有意思,让这些孩子喜欢上程序设计呢?下面说说我在教学过程进行的大胆尝试和优化,变“错”为“宝”,让课堂因错误而更加精彩的一些教学策略。一、 增强入门的趣味性部分学生甚至是老师,一听到程序设计就“闻”而却步,以为程序这东西既专业又高深。因此,很多人只是抱着试试看的心态来参加程序设计社团。在启蒙辅导过程中,要注重引导,增强入门趣味性,让学生对计算机编程产生浓厚的兴趣和强烈的求知欲。例如,在学生进入社团的第一节课,我就给他们讲比尔盖茨小时候的故事、微软公司诞生的故事,和一些计算机软件有关的小
3、故事等,逐步引导学生了解计算机程序在计算机发展史上的重要作用。此外,我还为学生编写了几个有趣实用的程序让他们调试,让他们对程序的产生、运行有一定的了解。例如以下程序:这是是一个算法简单的程序。但程序中以xi yang yang(喜羊羊)与hui tai lang(灰太狼)这两个小学生喜闻乐见的动画人物为背景,就增加了它的趣味性。孩子们通过上机调试,发现这个程序能根据输入的不同,让喜羊羊和灰太狼来一次PK,使他们知道计算机程序并不是一行行的英文代码,而是可以实现人机交互的中介媒体,很有趣味。二、 注重思维能力的培养程序设计是一种思维“体操”, 在教学中,我们要把思维能力的培养贯穿到辅导的各个环节
4、中,不能就问题讲问题,要教会学生从不同的角度思考问题,“横看成岭侧成峰,远近高低各不同”,即使一个简单的问题,也有着许多种思考的角度。作为初学程序的小学生,迫切需要思维能力的培养,而良好的思维能力有助于孩子们今后的学习和生活,让他们受益匪浅。因此,在平时的竞赛辅导中,我非常注重培养学生思维能力的培养。1、具体问题的抽象化概括,培养数学思维能力从具体到抽象的概括是学生逻辑思维能力的一个重要部分,对于四、五年级的孩子来说,看懂一道程序题,提取出其中的主要信息,有时候也会存在困难。因此,我常常会在教学中要求学生对题目中某些具体问题进行抽象化的概括,培养他们的数学思维能力。例如,大侦探柯南非常喜欢观察
5、问题和分析问题,他为取得罪犯是否在现场出现的证据,亲自实践罪犯可能的行走路线。第一条路线他用了92min,第二天路线用了82min。他在每一条路线上所用的时间与上一条路线相比都少10min,直到第九条路线他用了12min。问,柯南走完这九条路线共用了多长时间?对于刚入门学编程的三四年级学生来说,要理解题目已经不易,更何况要用程序设计中比较难理解的循环结构来解题了。我提示学生用数学上解应用题的方式,提取出题目的条件和问题,再列出计算式。根据要求,学生很快就得出这样一个算式s=92+82+12。为了后面计算简便,我引导学生将式子转换为:s=12+22+82+92。接着引导学生发现规律,最后用数学公
6、式来归纳讲解。先思考两个数连加的问题:s:=0;s:=s+12s:=s+22推广到三个数连加的问题: s:=0;s:=s+12s:=s+22 s:=s+32最终可得到:s:=0;s:=s+10+2s:=s+20+2 s:=s+30+2s:=s+90+2归纳如下:s:=0fori=1 to 9 do s:=s+10*i+2;程序设计与数学思维启发密不可分,通过以上由浅入深的引导,学生能很好地理解题目,理解程序,也能提高学生自主思考的能力,发挥他们主动学习的积极性。2、互动参与式课堂,引导学生发散思维传统课堂要求学生规规矩矩地坐着学习,稍微有走动就是违反纪律、不认真的行为,可我认为程序设计学习需要
7、互动参与式的课堂,即“活动的课堂”。当学生编写出可运行的小程序时,我会不失时机地让学生上机调试,对于运行成功的在上课时集中演示,增强学生的成就感。而且成功运行的程序也有不同的程序内容,就可以结合比较法,让学生自己上台讲解,把自己的想法完全展示在别的同学面前。再让其他同学先听懂,后思考,再向这位同学质疑。在这样的课堂环境中,真正实现了师生互动、人机互动、生生互动,也更有利于引导学生进行发散性思维。例如,我向学生给出这样一个问题:“不用中间变量,使两个变量的值互相交换”。我要求学生先进行独立思考,对每个程序的数学模型、思路、算法、实现方式等提出自己的看法,然后进行讨论和实践。结果,大家通过讨论,提
8、出以下四种算法:read (a,b);a : = a-b;b : =a+b;a : =b-a;write (a=,a, b=,b);read (a,b);a : = a+b;b : =a-b;a : =a-b;write (a=,a, b=,b);(1) (2) read (a,b);a : = a/b;b : =a*b;a : =1/a*b;write (a=,a, b=,b);read (a,b);a : = a*b;b : =a/b;a : =a/b;write (a=,a, b=,b);(3) (4)之后,大家又对这四种算法经过较仔细的比较研究,发现第三算法不适用于变量为0的情况,第四
9、种算法不适用于a与b不能相互整除和变量值为0的情况,否定了这两种算法,肯定了一、二两种算法。通过这样的思维训练,不但提高了学生对Pascal语言的应用能力,提高了阅读程序、修改程序的能力,更培养了学生的发散思维能力。三、 重视学习习惯的培养程序设计竞赛不是一个很快就能出成绩的比赛,学生从开始接触到获得一定阶段的成绩,需要较长时间的训练。在这个过程中教师要有意识的训练、培养学生的学习习惯,为今后的学习做铺垫。良好的学习习惯是形成信息素养的前提和基础。所以,我们在程序设计教学过程中也要重视对学生良好学习习惯的培养。1、编程习惯的培养在程序设计的起始阶段,我很重视学生编程习惯的养成,比如代码编写习惯
10、、文件命名习惯等。但是,由于课时紧张,到后期,我对程序设计结果的关注往往多于对程序设计习惯的关注。因此,学生也常常会出现“浑水摸鱼”,代码编写随意的现象。例如,李同学在运行回形矩阵算法的程序时,出现了两个错误提示,他自己改来改去都无法运行,不知道自己究竟错在哪。我一看他的程序,乱糟糟的格式,明明只是漏了一个“end;”,他却找不到。在Pascal程序设计中,“begin”和“end”一般都是成对出现的,因此,在代码书写过程中,同一组的“begin”和“end”的位置必须对齐。我要求他把程序格式修改规范后,他很快就发现了自己在倒数第二行所漏写的“end;”了,并进行了及时的改正。最终,他的程序顺
11、利执行。好的编程习惯不但能使学生在程序设计中减少类似以上事例中明显语法错误的出现,而且,能让学生形成严谨的编程作风。因此,教师在平常教学中,要多留心观察学生的编程习惯,如发现有不妥之处,要及时提醒学生更正。此外,教师在平时的示范教学中也要以身作则,规范自己的编程习惯。2、自学习惯的培养学生自学能力的强弱决定了其是否能进一步深入发展,这是由程序设计竞赛的性质决定的。集中辅导的时间不可能占据学生的很多时间,很多知识和能力都需要学生自我消化。因此,从辅导初期就应注重学生自学能力的培养,这对于提高学生综合素质具有很重要的意义。例如:我在讲授三种循环时,考虑到如果全部由我来讲解,可能就显得枯燥、乏味,理
12、解效果也不见得很好。于是,我只讲授了计数循环和当型循环,而让学生自学直到型循环。学生通过自学课本,上机操作、总结,最后大家共同讨论三种循环结构的异同之处,这样效果颇佳。四、 组建互助的学习型团队曾经有句名言,我有一种思想,你也有一种思想,互相交换,每人就都有了两种思想。其实程序设计学习也是如此。每个孩子的思维方式不尽相同,对于同一个问题,他们就会想出不同的算法,编出不同的程序来解决。如果孩子们把算法互相交换,通过教师引导提炼,学生能学会多种方法,思维能力也得到大大提升。因此,在辅导过程中,我们可以根据学生的实际能力,将他们分成不同的学习互助型团队。在合作学习的过程中,学习较为轻松的孩子会主动承
13、担重任,去帮助整个团队尽快完成任务;学习较为困难的孩子会在这种团队学习的环境中,学会更多的解题思路与算法,去完善自身知识的匮乏。例如在讲解排序时,我先介绍一种简单的排序方法冒泡排序,然后让学生借助一定的学习资料,在团队中尝试产生其它各排序的方法。团队中不同的成员会产生不同的排序思路,他们一起参与讨论,比较不同排序间的效率。如此,在教师的引导下,学生进行团队合作学习,其学习效果远高于单一的教师讲解。互助型学习团队的效果不仅仅在于其教学效果的达成度上,更多地是让学生在活动中体验到团队合作的乐趣。这种体验让学生愿意参与活动,让本来枯燥的逻辑思考变得热烈而生动。而且,在学习团队中通过自主交流、讨论得到
14、的知识,学生往往更容易接受,而且印象深刻。长期以往,学生自主学习的能力、思维能力也将得到提高。五、 构架家校沟通的桥梁由于程序设计竞赛辅导每天只有半小时的教学时间,因此,有一部分编程作业是需要学生带回家完成的。然而,有不少家长谈“机”色变,其中有些家长甚至采取强制手段杜绝孩子使用电脑。因此,在学生无法完成课后作业的情况下,我常常需要延长训练周期,把原本属于课外任务的部分也带到课内完成。事实上,家长的这些行为,主要是因为对程序设计的不了解,以及对网络环境的担忧。在与家长进行沟通后,我为每一位孩子建立一个学习档案,时刻关注孩子的在校以及在家的学习情况和使用电脑的情况,做到心中有数。此外,我也会定期
15、和家长联系,沟通学生在校的学习情况和与家庭练习情况。在小学阶段,程序设计的学习可以培养学生严密的逻辑思维能力,严谨的科学研究精神及积极的探索创造能力。作为辅导教师,我认为,我们要做的是:带领孩子们走进这个程序设计的神奇世界,领略程序设计的魅力,并让孩子们在这个过程中能有所得。今后,我也将为了我心中的目标继续努力,不断完善辅导方式和方法,让更多的学生发挥特长,走向自己理想的彼岸!【参考文献】 信息学奥赛的“一二三四”吴建峰如何提高信息学竞赛辅导的实效孙小明信息学奥赛辅导中教师角色的探究游光辉作者:朱英单位:蔚斗小学邮编:315803电话:15306689336电子邮件:zhuying19841106