激活算法与程序设计教学的若干策略_第1页
激活算法与程序设计教学的若干策略_第2页
激活算法与程序设计教学的若干策略_第3页
激活算法与程序设计教学的若干策略_第4页
激活算法与程序设计教学的若干策略_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、激活算法与程序设计教学的若干策龍【内容摘要】信息技术基础模块屮调整变化最大的是算法部分, 对算法基础耍求作了增强。木文结合教学实践,探讨了算法与程序设计 模块有效教学的有关问题。【关键词】信息技术以学定教寓教于乐重视实践高屮信息技术深化课程改革,将算法与程序设计模块屮最基础、 最核心的部分筛选出来,作为算法与程序设计基础,纳入到信息技术基 础模块中,巧妙地将两者合“二”为“一”,目的是为了突出信息技术 学科的本体性知识。那么,如何把抽象而枯燥的算法与程序设计知识教得 生动活泼又有效呢?一、以学定教,紧密联系实践促进学生理解1 实施启发教学,引导学生仔细观察、分析问题模仿qq软件的登录界面设计的

2、vb实例是人品计算器。首先教师展示 人品计算器的界面,学生欣喜地在自己的机器上运行程序,输入一个名字 后按“确定”按钮得到人品值。接着教师提岀问题,作品中共包含几个对 象?隶属于几个控件类?然后,请学生回顾操作流程,记录程序界面上的 变化,并描述作品的功能:文木框1中显示提示文字“请输入姓名”, 宁体颜色为灰色。单击文本框1后,“请输入姓名”消失。当输入姓名 时,字体颜色由灰色变成黑色。输入姓名后,即文本框1不为空,单击“确定”按钮,在文本框2中显示人品值(两位的随机整数),否则不做 任何操作。单击“清除”按钮,清除文木框1和文木框2中的内容。最 后,要求学生设计界面,添加相应的对象,并根据刚

3、才得出的功能编写对 象的事件处理过程代码,实现问题的解决。2把难点内容、专业术语、理论知识具体化、感性化、趣味化visual basic是一种可视化、面向对象、以事件驱动为运行机制的程 序设计语言。对象、属性、方法、类、事件、事件处理过程是vb的基本 概念,这些术语比较抽象,学生理解上会有困难,因此要用通俗的语言, 结合vb实例进行讲解。对象是客观存在的事物,一个人、一个按钮都是 一个对象。事件是由用户在对象上激发的一种动作,即你做了什么动作。3.回归算法本质,联系实践促进概念的理解和掌握在算法与程序设计模块教学中,面向对象程序设计的基础知识是 一个很大的难点,特别是对象、属性、事件这些概念,

4、往往老师讲了两三 遍,学牛还是似懂非懂。当代认知心理学家安德森把人类掌握知识的表征 形式分为:陈述性知识与程序性知识。陈述性知识学得快,忘得也快,这 也说明能通过课堂实践进行教学的内容要尽量在机房中通过实践解决问 题。而程序性知识一旦学会,就不大会被遗忘。从两者的联系上來看,陈 述性知识是获得学习程序性知识的基础。学生在学vb前,已经从画图和 ps软件屮知道了工具箱的作用和用法,这为他们学习新的知识提供了保 障。同时,程序性知识的获得也为获取新的陈述性知识提供了可靠的保证。 学生根据观察出现在窗体上的各类对象的属性窗口以及代码窗口的内容, 理解并掌握了类一一对象,对象一一属性,对象一一事件这些

5、抽象的概 念。例如在机房上课,可以不像以前那样先介绍vb界面,而是先让学生 自己观察vb界面,不难发现它和以前接触过的画图软件、ps软件一样, 都有工具箱,工具箱的用法大家都知道,那就自己动手试试看吧。很快, 学生根据要求在窗体上拖出了各类对象,并按照提示修改了相应的属性, 在这个过程中,教师提醒学生观察属性窗口,体会“同类对象具有相同的 属性,不同类对象具有不同的属性”、“同类对象虽然有相同的属性,但其 属性值不一定相同”。第二步,教师演示编写一个forml_ load ()过程, 利用代码再次针对各个対象修改相应的属性,再让学生自己动手试一试。 这样,“对象的属性值可以在设计时设置,也可以

6、在运行时修改”就不难 理解了。第三步,让学生观察代码窗口中的首尾两行,再运行,引导学生 理解forml_load ()过程中的代码是在对象forml装载时被运行的。类似 的,请学生编写commanadl_click ()过程和textl _change ()过程, 并通过“启动”运行加深理解。二、寓教于乐,运用实例冇效串联知识点1.用小游戏引导学生进入程序的殿堂程序设计的教学中,学生遇到的第一个问题可能就是分支结构的if 语句,其中涉及的语法知识要求又多,即要讲授有行if语句,又要讲授 列if语句,而且讲授例子又比较枯燥,比如书本上的实例:“二元一次方 程”。对于这个数学例子学生非常熟悉,很容

7、易产生倦怠心理。而如果选 择的题目过于复杂,学生乂难于理解,从而根木不从谈起学生的兴趣,最 后变成了乏味的知识传授。怎样改变这种乏味的教学,提高教学的有效性, 就成了教学难点,笔者设计了一个电视中的小游戏:“幸运52猜价格”, 先在幻灯片中显示一个价格在1100元的日用品,再通过事先制作好的 小程序来讣学生在5次内猜出商品的价格,根据学生所猜测的数值多少, 电脑提示“太高了;太低了;不错哦,竟然蒙対了;你永远也猜不到了!” 在经过几轮的参与后,让同学首先思考第一问题,怎样让电脑实现判断“太 高了;太低了;不错哦,竟然蒙对了! ”先给出一个产品的实际价格,并 让学生试着用伪代码或自然语言进行描述

8、。这里釆用实际的价格,而不是 采用随机数,即避免了 “随机整数生成”难点对于本节谍中if语句的干 扰,又让学生有一种真实的感觉,从而即分散了教学中的难点,又提高了 学生的学习兴趣。教学屮建议先用行if语句来进行讲授,让学牛了解每 一个判断的过程,再逐步提升到列if语句,再通过计算机来进行实现。 等学生掌握后再来提笫二个问题,怎样来实现5次的限制,从而实现“你 永远也猜不到了!”从而推出计数及判断语句的嵌套,并用程序进行实现。 这样由浅入深的设计即有利于学生理解,又可以让学生通过这种游戏的例 子,寓教于乐屮逐步体会判断语句的用法。2.用有意义的vb实例吸引学生的眼球,提高课堂教学的趣味性将算法与

9、程序设计跟h常生活联系起来,通过贴近学生生活的实例, 拉近师生之间的距离。比如:使用随机函数制作人品计算器,利用图像框 与计时器控件制作动画播放器,设计一个简易计算器完成加、减、乘、除 基本运算,利用枚举算法逐一列举实现密码破解,利用枚举算法统计2001 到2400年间的闰年,利用解析算法推导公式计算出租车的费用。3.运用化整为零的策略借助vb实例串联基础知识点由于信息技术课每周二节,时间间隔较长,学生上下节知识串联难度较大。针对这种情况,我想能不能利用信息技术课的特点,让学生在实践 中学习,在实践中掌握巩固相关知识点。具体做法是每节课以案例学习为 主,各个知识点用项目进行管理,対教学进行重新

10、整理,将各个知识点落 实在例子屮,并通过不同的实例巩固各个知识要点。例如在第一节的例子 中,要求圆面积,这里涉及到的两个变量s和r均为实数(double)。在 笫五节的例子中,求前n个自然数z和,这里要求学生掌握整数型变量 (integer),学生编完程序,调试成功后,再要求把程序改为求前n个自 然数之积,这时问题出现了:“数据溢出! ”然后教师顺势引出长整型 (long)、单精度实数型(single)o虽然在不同的时间,不同的例子屮出 现不同的数据类型,但学生们都掌握了什么时候该用什么数据类型的依 据:程序设计要考虑程序运行时变量占用的内存空间,够用就好。把知识点分解到例子中学习,还要注意小

11、步调前行。这样一方面是对 前几节课所学内容的巩固,又学了新的知识。即使在同一节课中,安排的 内容也要循序渐进。例如在for循环语句的教学中,第一步,先让学生掌握在窗体上显示 一个可以用print语句,第一个任务一下子就完成。但当连续演示 显示一颗星时,窗休上纵向出现了一连串“*”,分析原因:在窗休上显示 内容前要先用cls语句清空。第二步,在窗体上显示一列“*”,大家根据for循坏语句的结构,也 很快地完成了。第三步,在窗体上显示一排老师分析print语句的实质是显示 完内容后,自动换行。在print语句后加可以实现显示内容后,光 标停在当前位置。理解了这一点,第三个任务也完成了。第四步,在窗

12、体上显示一组正方形的“*”,很显然,这需要双重循环。 很多同学在进行尝试后大喊“不行,都显示到一排上去了我让大家打 开word,输入一排“*”后,问“接下来怎么做? ”大家异口同声地回答:“回车怎么实现? ”有个别学生做恍然大悟状:“哦,用一个不加 的print语句来实现换行。” “这个print语句的位置应该在哪里? ” “里 层循环的next语句后面。”好了,第四个任务过关。第五步,在窗体上显示一组平行四边形的“*”。我在巡视课堂的过程 屮发现冇个别同学先在word屮输出*,再分析,再编写程序。我马上请“it 小神童”帮大家分析:在每行之前耍加入若干个空格,空格的个数 和行号有关,具体的表

13、达式为:笫i行要有nt个空格。在规定动作完成之后,再让同学们自由发挥,显示一组三角形的大家根据刚才分析的思路动手实践,做出了各种形状的三角形。从而摒弃 了 “老师演示一一学生模仿”单一重复的做法,实现了课堂生成。4强化作品的“建模”理念通过设计一个完整的vb作品,让学生明确vb程序设计的步骤大致分 为:(1)建立界面以及界面中的对象;(2)设置各个对象的属性;(3)编 写对象的事件处理过程代码;(4)调试、运行程序;(5)保存工程,生成 可执行文件。在设计作品的过程屮,潜移默化地渗透“对象”的意识,强 化“建模”理念。三、上机实践,实现编程与调试的相互结合技术高考采取纸笔+上机的考试形式,这就

14、要求学生的vb学习除了掌握基本概念和基本知识外,还要有较强的程序调试能力。当编写好一个程 序时,必须要经过调试程序这道关卡,准确地知道程序的执行情况。一旦 提示错误信息,根据出错信息或“调试”功能找到出错的语句,分析出错 的原因。比如缺少某个对象、结果溢出、类型不匹配、数组元素下标越界、 子程序或函数未定义、无效的过程调用或参数等。通过修改代码纠正错误, 学生从中可以学到更多的东西。因此,教师要多给学生一些犯错的机会, 这样学生会成长的更快。学生作业中有些错误是共性的,有些错误甚至是出人意料的,教师可 以从错误屮学到很多新的内容。例如在做“猜数游戏”这个作业时,有学 生举手说为什么他编的程序每

15、次猜的数都只能是oo我仔细看了他的代码, 没有错误,再仔细分析,发现是在定义全局变量n (被猜的那个随机数) 时他输成了 a,也就是被猜的那个数n变成了局部变量,那么每次运行调 试时,代码全都能过,就是被猜的那个数没有定义过,所以只能是零。由 于当时还没冇讲到过程与函数,全局变量和局部变量不能多讲,我只让那 位学生先把a改成n。通过这件事,我意识到在调试过程中碰到的问题可 以为以后的学习打下伏笔,山此,我要求学生在调试过程中碰到的错误以 注释语句的形式保存在代码中,一方面可以加深印象,另一方面可以为以 后的学习作钮垫。总之,算法与程序设计本身是抽象的,教师要创设情景,引导学生分 析问题,通过问题解决,把难点内容、专业术语、理论知识具体化、感性 化、趣味化,学生必定学得生动活泼。此外学生本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论