一、教学内容
教学内容选用中华人民共和国教育部制订的《普通高中技术课程标准》(xxxx年4月版)中信息技术部分的选修模块1“算法与程序设计”第一章的第一课“计算机解决问题的过程”,教学时数为1课时(45分钟)。《普通高中技术课程标准》建议“算法与程序设计”模块在高中二年级第一学期或以后开设。
二、教材分析
根据xxxx年4月版《普通高中技术课程标准》的阐述,“算法与程序设计”是普通高中信息技术的选修模块之1,它的前导课程是信息技术的必修模块“信息技术基础”。学生在“信息技术基础”模块里已经学习了计算机的基本操作,掌握了启动程序、窗口操作和文字编辑等基础知识。学生可以利用上述的基础知识,用于本节课的启动VisualBasic程序设计环境,输入程序代码,运行程序等操作。本节课“计算机解决问题的过程”是“算法与程序设计”模块的第一节课,上好这节课是使学生能否学好“算法与程序设计”这一模块的关键。本节课的教学目的是让学生理解分析问题、设计算法、编写程序和调试程序等用计算机解决问题的基本过程,认识其在算法与程序设计中的地位和作用,它也是后续课程如模块化程序设计、各种算法设计等课程的基础。
与本节课相联系的旧知识是计算机的基本操作中鼠标、键盘操作,启动、关闭程序,窗口、菜单操作和文字编辑等基础知识,还有解决数学问题的步骤等知识。
三、教学目标
知识性目标:
1、让学生了解算法、穷举法、程序设计语言、编写程序和调试程序等概念。
2、让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述。
3、让学生理解分析问题、设计算法、编写程序、调试程序这一用计算机解决问题的基本步骤,认识其在算法与程序设计中的作用。
情感性目标:
通过“韩信点兵”这个富有生动情节的实例和探究、讲授、观摩、交流等环节,让学生体验用计算机解决问题的基本过程。您现在访问的是中国学科吧旗下教案网http://www.jsfw8.com/jafs/
四、重点难点
本节的重点用计算解决问题的过程中的分析问题、设计算法、和上机调试程序等步骤。用计算解决问题的过程中的分析问题、设计算法也是本节的难点。
五、教具选择
1、可以进行屏幕广播的多媒体电脑室。
2、教师自行设计制作的课件。
3、印刷《计算机解决问题的过程》教学活动表(见附1)。
六、教学方法
让学生在人工解题中发现分析问题、设计算法等步骤,并把它应用到用计算机解决问题中去,这是构建主义中知识迁移的方法。本节课还采用了探究、讲授、观摩、交流、阅读材料等多种教学活动的有机结合的方法。
七、教学过程
(一)引入
教师:“在科技发达的今天,我们到处都可以看到计算机的踪影,感受到计算机给学习、生活带来的方便。然而,在惊叹计算机的神奇和享受的欢乐的时候,你是否了解计算解决问题的基本过程?有没有思考过其中的奥妙呢?下面我们先看一个古典的问题:”
学生观看约1分钟的电视剧《汉刘邦》片断,内容大致如下:
“韩信是我国西汉初著名的军事家,刘邦得天下,军事上全依靠他。韩信点兵,多多益善,不仅如此,还能经常以少胜多,以弱胜强。在与楚军决战时韩信指挥诸侯联军,在垓下十面埋伏,击败楚军,楚霸王项羽因此自杀。”
片断结束时屏幕出现“韩信点兵”问题:“相传汉高祖刘邦问大将军韩信统御兵士多少,韩信答说,每3人一列余1人、5人一列余2人、7人一列余4人、13人一列余6人……。刘邦茫然而不知其数。你呢?”
(二)问题
教师:“下面我们先助刘邦解决一个简单的问题。”
展示题目:
“韩信点兵”问题1:求整除3余1、整除5余2、整除7余4的最小自然数。
(三)探究
把全班分成16个学习小组,每个小组的同学一起探究、讨论问题。利用已学过的数学知识找出题目已知什么求什么、明确已知和未知之间的关系和写出求解问题的解题步骤。并填写《计算机解决问题的过程》教学活动表中的“探究问题记录表”。如下:您现在访问的是中国学科吧旗下教案网http://www.jsfw8.com/jafs/
探究问题记录表
分析问题(找出已知和未知、列出已知和未知之间的关系)
写出解题步骤
结果
给5分钟学生讨论,教师在这过程中到各学习小组中,引导个别学习小组分析问题、写出解题步骤。教师提问2~3个同学,从中逐渐引导出类似如下的分析问题和解题步骤,并给出算法的概念。
分析问题(找出已知和未知、列出已知和未知之间的关系)
写出解题步骤
设所求的数为X,则X应满足:
X整除3余1
X整除5余2
X整除7余4
1、令X为1。
2、如果X整除3余1,X整除5余2,
X整除7余4,这就是题目要求的数,则记下这个X。
3、令X为X+1(为算下一个作准备)。
4、如果算出,则结束;否则跳转2。
5、写出答案。
教师解释第3步“另X为X+1”并指出它与数学中的区别,并从上面的解题步骤中总结出穷举的算法。
教师:“刚才有些同学把题目解出来了,答案是67,韩信作为大将军,统率士兵当然不止67人,下面我们来解决一个数据量稍大的问题。”您现在访问的是中国学科吧旗下教案网http://www.jsfw8.com/jafs/
展示题目:
“韩信点兵”问题2:求整除3余1、整除5余2、整除7余4、整除13余6、整除17余8的最小自然数。
给2分钟学生分析上述问题并写出算法,不用计算。学生有了第1题的经验,很快会写出和第一题类似的算法。如下:
分析问题(找出已知和未知、列出已知和未知之间的关系)
写出解题步骤
设所求的数为X,则X应满足:
X整除3余1
X整除5余2
X整除7余4
X整除13余6
X整除17余8
1、令X为1。
2、如果X整除3余1,
X整除5余2,
X整除7余4,
X整除13余6,
X整除17余8,则记下这个X。
3、令X为X+1。
4、如果算出,则结束;否则跳转2。
5、写出答案。
教师:“上面的结果超过1万,人工计算要很长时间,在科技发达的今天,你想到什么?”(用计算机解题)
(四)用计算机解决问题
教师:“计算机怎么样解决问题?用计算机解决问题,同样要经过分析问题、设计算法两步骤。”在讲授过程中展示人工解题中分析问题和设计算法这两个步骤。您现在访问的是中国学科吧旗下教案网http://www.jsfw8.com/jafs/
教师:“用计算机解题,是不是输入上面的算法?上面用自然语言描述的算法,计算机不懂,必须翻译成计算机的语言,这就是程序设计语言。”教师展示与用VisualBasic语言编写的程序作对照。简单解释变Y的作用,并提示学生程序设计语言是我们以后学习的重点。
本例用VisualBasic语言编写的程序请看教材如下:
PrivateSubCommand1_Click()
DimXAsInteger,YAsInteger
X=1:Y=0
Do
IfXMod3=1Then
IfXMod5=2Then
IfXMod7=4Then
IfXMod13=6Then
IfXMod17=8ThenY=X
EndIf
EndIf
EndIf
EndIf
X=X+1
LoopUntilY>0
Print"韩信统御士兵数:";Y
EndSub
教师:“程序编好以后,通过键盘输入计算机,并运行程序查看结果这个过程叫调试程序。”
(五)观摩
根据前面编制的程序,启动Visua您现在访问的是中国学科吧旗下教案网http://www.jsfw8.com/jafs/
lBasic程序设计环境,输入程序代码,进行调试,最后得到运行的结果。具体操作步骤请看教材(第4、5页)。要求同组内先完成的同学帮助还未完成的同学。帮助的时候不能代劳,只能动口不动手。。
教师演示操作步骤。
学生上机调试程序,教师作个别指导,时间是10分钟。
操作时有些学生很快完成,有些学生则很慢,解决案是布置操作快的同学阅读教材并完成《计算机解决问题的过程》教学活动表中的填空题。较慢的同学在他们调试了约8分钟后告诉他们可以通过网上邻居下载程序。以便能在10分钟内调试出程序。
(六)交流
教师:“前面我们学习了用计算机解决问题的过程,它和人工解有什么关系呢?同一学习小组的同学一起探讨人工求解问题和用计算机求解问题的异同,并把讨论结果记录在《计算机解决问题的过程》教学活动表的“讨论记录”表中。如下:
关于求解问题的方式讨论记录
求解问题的方式
相同点
不同点
人工求解问题
用计算机求解问题
教师提问2~3个小组的讨论结果,并引导出大致如下的形式结果:
求解问题的方式
相同点
不同点
人工求解问题
分析问题、设计算法、得出结果、验算结果等
对题目进行解答、运算速度慢、不需要计算机等
用计算机求解问题
编写程序、调试程序、运算速度快等您现在访问的是中国学科吧旗下教案网http://www.jsfw8.com/jafs/
(七)小结、布置实践和练习
您现在访问的是中国学科吧旗下教案网http://www.jsfw8.com/jafs/