浅谈信息学奥林匹克竞赛辅导教学方法与技巧
注谈信息学奥林匹克比赛辅导教学办法与技巧
\省小学信息学奥林匹克比赛以\信息与以后\夏令营为载体,经过上机编程着重考察学 生对咨询题的分析理解能力,数学抽象思维能力,编程语言的应用能力和编程技巧、想象力 和制造力等。在信息学奥赛的辅导教学过程中,作为教练员应依据\体验科学探索活动的过 程与办法,培养良好的科学态度,增强创新意识和实践能力”的指导思想,摸索出一条比较 新颖的适合小学生的教学方式。
信息学奥赛所涉及的内容广,程度深,从计算机qb语言教学,到基本算法、相关知识 点包含许多专业知识。就教学常态而言,至少要2-3年左右的时刻,才干培养出一划好的选 手。但是要提高学生的程序设计能力,并别是人们想象中那么高別可攀,只要办法得肖,持 之以恒,是能够取得良好效果的。
现状分析 存在以下几点:
就本校现状来看,信息学比赛与其它学科比赛之间存在着明显差异,大致
(1) 学生别了解学习的内容
信息学程序设计是全新的课程项目,学生从来未接触过,并别了解其中神秘,缺乏兴趣。 启蒙将花费较大精力。加上要紧学科老师及学生家长存在着种种误解,别是很支持,参加人 数少。
(2) 学生参加活动时刻有限
信息学比赛别同于英它学科比赛,难以安排特意时刻,辅导只能利用周末和节假日。而 学生空余时刻本来有限,能支配的时刻少之又少,时刻安排相当困难。
(3) 学生对学习方式别习惯
il?算机程序设计是一门与实践操作结合特别密切的学科,学生假如采纳传统的学习方式 来对
待,必是学得累,学习兴趣受挫,最终可能会挑选放弃。 辅导方式 而对现状, 结合小学生的认知规律及思维进展规律。经过几年的教学实践,我们摸索出了“引导+创新\的教学指导模式,呈现出较高的效率和良好的效果。
一、引导一一教师比赛辅导的基础
引导指采纳一立的手段,把某种本来就潜藏于受教者身上的潜力挖掘出来,从一种潜质 转变为现实。关于信息学比赛辅导教学来说引导的目的算是为了少教,别教。经过启示、激 发让学生能在主动学习、主动探求、主动沟通、主动应用、主动完善的一种学习活动过程中, 咱我”得到充分进展。
首先要明确地告诉学生目光要放远,信息学比赛对思维能力的拓展培养、以后各方面进 展都十分有利。让学生意识到信息学科的重要性和学科间知识的无界性、扩展性、渗透性。
英次计算机解决咨询题的方式比较细致繁杂,程序是对所要解决咨询题的各个对象和处 理规则的描述,算法是解决咨询题办法的精确描述,结合小学生抽象思维较弱的特点,一些 算法只能领悟,对每个咨询题,別同学生有别尽相同的算法,教师别能采纳灌输的方法,只 能指导一具方向性的思路,由学生独立编制完成。教师要多做有心人,针对每个学生别同的 思维适应和特点,从学生的主体性地位动身,有针对性分别指导。长期坚持,学生的独立考 虑和自学能力就得到长脚进展。
比如\回形矩阵\题目(jsoi20xx小学组复赛第1题),能够有多种解题办法,能够用一 般变量,也能够用下标变量;能够用for循环,也能够用do......loop循环;可用拟人法来解 题,也能够用解析法来解题等等。引导学生尽可能掌握多种办法来解题。
有些经典咨询题,小学教材中给出普通解法,对各种特殊事情和变形别作深入的研究。 而在实际应用中,又加入一些约束条件后,原有性质会发生改变,在题目中躲藏着别易察觉 的规律,作为教师应多引导学生经过对原咨询题标准程序段的扩展,将约束条件加入题目中,
进而发觉规律,得到有效算法。
例:回文数列(jsoi20xx小学组复赛第4题)
对一具正整数k,求出k的所有拆分,并统计输岀苴中回文数列的个数。 所谓回文数列是指该数列中的所有数字,从左向右或从右向左看都相同。 例如:
k = 4时,有如下的拆分: 4=1 + 1 + 14-1 =1+1+2 =1+2+1 =2+1+1 = 2 + 2 = 1+3 = 3 + 1
{回文数列1} {回文数列2} {回文数列3}
回文数列共有3个
经过分析咨询题,学生能够采纳回溯算法来解决,分为初始设置(包括数据输入、栈的 初始化以及初始元素的设置)、数的拆分(回溯)、回文数列的检测、输岀结果四个模块。 由于本题没有要求打印输出所有回文数列的原始淸单,只要求输出计数的结果,所以我 们能够换个角度引导学生重新考虑咨询题,以进一步发觉其中的规律。分别以4和5为例。
由于是回
文数列,所以每个数必须被分成3部分,以4为例:4=1+2+1,我们发觉中间的数字只能是 偶数,即2和0,为2的时候有1种数列,0的时候有2种数列。再来研究一下6,当为4 的时候有1种,为2的时候有2种,为0的时候有4种。最后看一下5,事情和4特別的相 似,不过中间的数字只能是奇数,如此以来思路就很淸楚了,我们能够首先将m2,将那个结 果给一具变量k,然后只要计算2人0+2八[+2人2+......+2A(k-l)的结果,再简化一下算是计算2*1 的值.
引导对教师的要求:
(1) 教师对自已所教的知识领域,达到一泄的深度和广度,是引导过程中的基本要求。 (2) 教师注重的是思路办法的拓展引导。教师作为教练在比赛的深化时期,程序点评 分
析及拓展是必要的。
二、创新一一学生成长的关键
1、 组建学习互助小组,编写对应的学习方案
信息学奥赛辅导的实践证明,许多咨询题别是单靠个人考虑所能解决的,最佳答案往往 是集体智慧的结晶。学生们每解决一具咨询题,建立一具新的程序模块,基本上一次创新。 在解决咨询题的过程中,刚入门的同学往往没有框框,反而容易有新思路,他们的想法应得 到充分的重视。经过讨论,连锁促思。有时学生们的想法会超过老师。所以教师在教学过程 中要营造一种平等、自由、互相尊重、互相信任的师生关系。
2、 搭建标准程序模块,探索最优解决方案
辅导别提倡题海战术,而要注重对咨询题别断深入的探究,最终得岀一具最优化的解决 方案,搭建一具标准程序模块,如此的模式,既为学生减轻了负担,又为他们养成良好的思 维品质、
提髙效率意识提供了极好的锻炼机会。
3、注重\咨询题”意识,培养倡导咨询题教学办法
\咨询题\决定潜力。提别出咨询题的学生别是\好\学生,没有咨询题说明没有进行深层 次的思维意识,\咨询题越多,潜力越无限”。固然,有\咨询题\是前提,解决咨询题则是 学生提升自我的重要途径。交流是关键,与团队交流,与教师交流,在络中交流,方式是灵 便多样,其最终目的算是达到解决咨询题,掌握知识,建构自我学习框架。
例如:减法算式
小红是二年级学生,老师布置他们回家自己出一道数学题做,题目要求是三位数的退位减 法,即要求一具三位数减去列一具三位数,(被减数比减数大),而被减数的个位必须向十位借 数才干减去减数的个位,然后被减数的十位也必须向百位借数才干减去减数的十位。小红的 哥哥小华,是五年级学生,在学习编程,她就让哥哥帮她编一具如此的程序,小华承诺了。 小华想到自己正在学习素数(除了本身和1外别能被其它数整除的正整数,1别是素数)知识, 就给题目增加了一具条件,算是被减数的百位数、十位数、个位数中或被减数本身必须至少 有1个是素数,减数也这样。如:438-269;513-479。请你帮助小华完成该程序,可以编岀所 有符合这些要求的题目。
经过仔细读题,发觉最终要列举岀所有符合条件的减法算式,对算式中的数字必须满脚 下列要求:
(1) 被减数、减数必须是三位数
(2) 被减数的个位必须向十位借数才干减去减数的个位,然后被减数的十位也必须向 百
位借数才干减去减数的十位。
(3) 被减数、减数的百位数、十位数、个位数中或被减数本身必须至少有1个是素数。
要解决上而的咨询题,首先在程序中推断1000以内的数是否是素数,然后运用穷举算 法在三位数中依次査寻,推断是否满脚上述第二条,如符合条件再推断这两个数是否满脚上 述第三条,以上两条均满脚则打印输出。
但是在运行的过程中,学生发觉了一具咨询题,最后一具算式是997-899=, 899显然 别符合题目要求,但是却显示在结果中。反复检测程序,均寻别到错误,于是同学们开始尝 试考虑其他的办法解决那个咨询题。
深入考虑,首先筛选出三位数中符合要求(3)——被减数、减数的百位数、十位数、 个位数中或被减数本身必须至少有1个是素数的数,然后运用穷举算法在这些数中依次査寻, 推断是否满脚要求第二条,以上两条均满脚则打印输岀。
dim a(900) n = 0
for i = 102 to 997
a = i mod 10: b = (i 10) mod 10 :c = i 100 ifa = 2ora = 3ora = 5ora = 7 then s = 1 else s = 0 ifb = 2orb = 3orb = 5orb = 7 then s = s + 1 ifc = 2orc = 3orc = 5orc = 7 then s = s + 1 f=0
for j = 2 to int(sqr(i)) if i mod j = 0 then f = 1: exit for next j
if f = Othen s = s + 1
if s >二 1 then n 二 n + 1: a(n) = i next i for i = 2 t on for j = 1 to i -1