《算法与程序设计》VB教案集.docx
- 文档编号:29329191
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:53
- 大小:2.18MB
《算法与程序设计》VB教案集.docx
《《算法与程序设计》VB教案集.docx》由会员分享,可在线阅读,更多相关《《算法与程序设计》VB教案集.docx(53页珍藏版)》请在冰豆网上搜索。
《算法与程序设计》VB教案集
1-1节计算机解决问题的过程
一、 教学目标
1、 知识与技能
(1)让学生了解算法、穷举法、程序设计语言、编写程序和调试程序等概念。
(2)让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述。
(3) 让学生理解分析问题、设计算法、编写程序、调试程序这一用计算机解决问题的基本步骤,认识其在算法与程序设计中的作用。
2、方法与过程
(1)培养学生发现旧知识的规律、方法和步骤,并把它运用到新知识中去的能力。
(2)培养学生调试程序的能力。
(3)培养学生合作、讨论、观摩、交流和自主学习的能力。
3、 情感态度和价值观
通过“韩信点兵”这个富有生动情节的实例和探究、讲授、观摩、交流等环节,让学生体验用计算机解决问题的基本过程。
二、 重点难点
本节的重点用计算解决问题的过程中的分析问题、设计算法、和上机调试程序等步骤。
用计算机解决问题的过程中的分析问题、设计算法也是本节的难点。
三、教学环境
1、教材处理
教学内容选用中华人民共和国教育部制订的《普通高中技术课程标准》(2003年4月版)中信息技术部分的选修模块1“算法与程序设计”第一章的第一课“计算机解决问题的过程”。
教材选用《广东省普通高中信息技术选修一:
算法与程序设计》第三章第一节,建议“算法与程序设计”模块在高中一年级下学期或高中二年级开设。
根据2003年4月版《普通高中技术课程标准》的阐述,“算法与程序设计”是普通高中信息技术的选修模块之1,它的前导课程是信息技术的必修模块“信息技术基础”。
学生在“信息技术基础”模块里已经学习了计算机的基本操作,掌握了启动程序、窗口操作和文字编辑等基础知识。
学生可以利用上述的基础知识,用于本节课的启动VisualBasic程序设计环境,输入程序代码,运行程序等操作。
本节课“计算机解决问题的过程”是“算法与程序设计”模块的第一节课,上好这节课是使学生能否学好“算法与程序设计”这一模块的关键。
本节课的教学目的是让学生理解分析问题、设计算法、编写程序和调试程序等用计算机解决问题的基本过程,认识其在算法与程序设计中的地位和作用,它也是后续课程如模块化程序设计、各种算法设计等课程的基础。
让学生在人工解题中发现分析问题、设计算法等步骤,并把它应用到用计算机解决问题中去,这是构建主义中知识迁移的方法。
本节课还采用了探究、讲授、观摩、交流、阅读材料等多种教学活动的有机结合的方法。
2、预备知识
本节课相联系的旧知识是计算机的基本操作中鼠标、键盘操作,启动、关闭程序,窗口、菜单操作和文字编辑等基础知识,还有解决数学问题的步骤等知识。
3、硬件要求
可以进行屏幕广播的多媒体电脑室。
教师自行设计制作的课件。
准备《计算机解决问题的过程》教学活动表。
4、所需软件
学生机要安装VB6.0或以上版本。
5、所需课时
2课时(100分钟)
四、教学过程
(一)引入
教师:
“在科技发达的今天,我们到处都可以看到计算机的踪影,感受到计算机给学习、生活带来的方便。
然而,在惊叹计算机的神奇和享受的欢乐的时候,你是否了解计算解决问题的基本过程?
有没有思考过其中的奥妙呢?
下面我们先看一个古典的问题:
”
学生观看约1分钟的电视剧《汉刘邦》片断,内容大致如下:
“韩信是我国西汉初著名的军事家,刘邦得天下,军事上全依靠他。
韩信点兵,多多益善,不仅如此,还能经常以少胜多,以弱胜强。
在与楚军决战时韩信指挥诸侯联军,在垓下十面埋伏,击败楚军,楚霸王项羽因此自杀。
”
片断结束时屏幕出现“韩信点兵”问题:
“相传汉高祖刘邦问大将军韩信统御兵士多少,韩信答说,每3人一列余1人、5人一列余2人、7人一列余4人、13人一列余6人……。
刘邦茫然而不知其数。
你呢?
”
(二)问题
教师:
“下面我们先助刘邦解决一个简单的问题。
”
展示题目:
“韩信点兵”问题1:
求整除3余1、整除5余2、整除7余4的最小自然数。
(三)探究
把全班分成16个学习小组,每个小组的同学一起探究、讨论问题。
利用已学过的数学知识找出题目已知什么求什么、明确已知和未知之间的关系和写出求解问题的解题步骤。
并填写《计算机解决问题的过程》教学活动表中的“探究问题记录表”。
如下:
探究问题记录表
分析问题(找出已知和未知、列出已知和未知之间的关系)
写出解题步骤
结果
给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人,下面我们来解决一个数据量稍大的问题。
”
展示题目:
“韩信点兵”问题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万,人工计算要很长时间,在科技发达的今天,你想到什么?
”(用计算机解题)
(四)用计算机解决问题
教师:
“计算机怎么样解决问题?
用计算机解决问题,同样要经过分析问题、设计算法两步骤。
”在讲授过程中展示人工解题中分析问题和设计算法这两个步骤。
教师:
“用计算机解题,是不是输入上面的算法?
上面用自然语言描述的算法,计算机不懂,必须翻译成计算机的语言,这就是程序设计语言。
”教师展示与用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
教师:
“程序编好以后,通过键盘输入计算机,并运行程序查看结果这个过程叫调试程序。
”
(五)观摩
根据前面编制的程序,启动VisualBasic程序设计环境,输入程序代码,进行调试,最后得到运行的结果。
具体操作步骤请看教材(第4、5页)。
要求同组内先完成的同学帮助还未完成的同学。
帮助的时候不能代劳,只能动口不动手。
。
教师演示操作步骤。
学生上机调试程序,教师作个别指导,时间是10分钟。
操作时有些学生很快完成,有些学生则很慢,解决方案是布置操作快的同学阅读教材并完成《计算机解决问题的过程》教学活动表中的填空题。
较慢的同学在他们调试了约8分钟后告诉他们可以通过网上邻居下载程序。
以便能在10分钟内调试出程序。
(六)交流
教师:
“前面我们学习了用计算机解决问题的过程,它和人工解有什么关系呢?
同一学习小组的同学一起探讨人工求解问题和用计算机求解问题的异同,并把讨论结果记录在《计算机解决问题的过程》教学活动表的“讨论记录”表中。
如下:
关于求解问题的方式讨论记录
求解问题的方式
相同点
不同点
人工求解问题
用计算机求解问题
教师提问2~3个小组的讨论结果,并引导出大致如下的形式结果:
求解问题的方式
相同点
不同点
人工求解问题
分析问题、设计算法、得出结果、验算结果等
对题目进行解答、运算速度慢、不需要计算机等
用计算机求解问题
编写程序、调试程序、运算速度快等
五、 课外拓展
相关资源
技术课程标准介绍:
东莞中学信息技术网:
普通高中技术课程网:
1-2节1-2节算法和算法的描述
一、 教学目标
1、知识与技能
(1)了解算法的定义及其表达方法;
(2)认知流程图的六种基本符号;
(3)理解计算机解决问题的一般过程。
2、方法与过程
(1)理解用不同的表达方法描述算法的优缺点;
(2)掌握用流程图描述简单的算法。
3、情感态度和价值观
以生活中的实例引入算法,激发学生的学习兴趣,培养学生的主动探究能力。
二、重点难点
(一)教学重点
1、算法的定义;
2、算法的三种表达方法;
3、流程图的六种基本符号;
4、用流程图描述简单的算法。
(二)教学难点
5、算法的描述(三种);
6、用流程图描述算法。
三、教学环境
1、教材处理
通过物理学中的实例了解算法的概念和算法的描述方法掌握用计算机解决实际问题的一般步骤。
用多媒体教学网开展教学;用“先自主探究,后教学指导”的方法进行教学。
2、预备知识
学生已掌握了用计算机解决问题的过程,掌握了计算机运用基础。
3、硬件要求
建议本节课在多媒体电脑教室中完成,最好有广播教学系统或投影仪,为拓展学习,学生机应允许上互联网。
4、所需软件
学生机要安装VB6.0或以上版本。
5、所需课时:
2课时(100分钟)
四、教学过程
教学内容
预期目标
新课内容:
一、对算法的初步了解
1.一个简单的物理问题:
书中例6-1-1:
求物体在恒力作用下的加速度。
根据在物理课中学过的知识,要解决这个问题有多种方法:
方法一:
a) 测量出物体的质量m、拉力F和滑动摩擦力f
b) 将测量所得的数据输入计算机
c) 根据牛顿第二定律F-f=m*a,计算出加速度a
d) 输出所得的结果
方法二:
a) 测量出物体从静止开始移动的距离s、时间t
b) 将测量所得的数据输入计算机
c) 利用公式:
s=a*t*t/2计算出加速度a
d) 输出所得的结果
2.算法的定义
这种为解决某一问题而设计的确定的有限的步骤称为算法。
二、算法的描述
要把解决问题的步骤表达出来,有多种方法可以表达算法。
1.用自然语言表达
用自然语言表达算法,就是把算法的各个步骤,依次用人们熟悉的自然语言表示出来。
优点:
容易理解
缺点:
书写较烦、不确定性、对复杂的问题难以表达准确、不能被计算机识别和执行
2.用图形符号表达
用图形符号表达算法必须要有一组规定统一、含义确定的专用符号。
常用的“流程图”所用的基本符号
图形符号
符号名称
说明
流线
起始、终止框
表示算法的开始或结束
起始框:
一流出线
终止框:
一流入线
输入、输出框
框中标明输入、输出的内容
只有一流入线和一流出线
处理框
框中标明进行什么处理
只有一流入线和一流出线
判定框
框中标明判定条件并在框外标明判定后的两种结果的流向
一流入线两流出线
(T和F
)但同时只能一流出线起作用
流线
表示从某一框到另一框的流向
连接圈
表示算法流向出口或入口连接点
一条流线
优点:
直观、形象
缺点:
不能被计算机识别和执行
例6-1-1:
“物体在恒力作用下的加速度”的算法用下图表达。
3.用程序实现算法
用计算机能理解和执行的程序设计语言把算法表示出来,然后把程序输入到计算机并执行,计算机才能按照预定的算法去解决问题。
不同类型的计算机能够识别的指令和语言不尽相同,即使对同一种计算机语言,不同类型的计算机对该语言的解释程序也有差异。
因此,用程序表示算法时,必须按照程序设计语言适用某类计算机的具体规定来进行。
例:
用Pascal语言表示“从键盘输入一组数据并求该组数据的平均值”的程序如下:
Programex_aver
VarI:
integer;x,av:
real;
Begin
Av:
=0;I:
=0;
Dowhilenoteof()
Begin
Readln(x);av:
=av+x;
I:
=I+1;
End
av:
=av/I;
Writenln(“Theaveragevalueis:
”,av);
End
三、用计算机解决问题的一般过程
使用计算机解决一个问题,一般包括四个过程
1.需求分析
“需求分析”是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。
“需求分析”就是确定要计算机“做什么”。
2.设计算法
弄清楚要计算机“做什么”后,就要设计计算法,明确要计算机“怎么做”
解决一个问题,可能有多种算法。
例如,数学题常常有“一题多解”。
这就是说,解决一个问题的算法可能不止一种。
这是,应该通过分析、比较、挑选一种最优的算法。
3.编写程序
计算机只能接受并执行计算机程序设计语言编写的程序。
当我们为解决一个问题确定了算法后,还必须将该算法用计算机程序设计语言编写程序。
这个过程成为“编码”或“编程”。
4.上机调试与维护
编写完成的程序,不一定完全符合实际问题的要求,还必须在计算机上运行这个程序,排除程序中可能出现的错误,才能得到结果。
这个过程称为“上机调试”。
即使是经过调试的程序,在使用一段时间后,仍然会被发现错误或不足之处。
这就需要对程序做进一步的修改,使之更加完善。
这个过程称为“维护”。
在实际解决问题时,上述四个步骤可能会根据不同的问题有所侧重。
引入物理学中的例子,激发学生的学习兴趣,有助于学生理解算法的概念
引导出算法的概念
介绍三种算法的表达方式,并对它们进行比较,分析优缺点。
给出流程图的基本符号,对其功能和使用情况加以说明,以便今后在具体运用中的正确使用。
给出流程图的作法,通过详细的解释说明使学生初步掌握流程图的使用和基本画法。
了解计算机解决问题的一般过程,为今后用编程解决实际问题打下基础。
五、课外拓展
1、相关资源
东莞中学信息技术网:
普通高中技术课程网:
2、课外练习
小明是小学一年级学生,请你为他设计一个小程序,专门用来练习加法运算。
具体讲就是让计算机产生两个整数并组成加法竖式,再从键盘输入一个结果数,最后让计算机来判断结果是否正确。
1-3程序与程序设计语言
一、教学目标
1、知识与技能
使学生知道什么是源代码,并理解算法、程序设计、程序设计语言之间的关系,了解程序设计语言的发展及种类。
2、过程与方法
使学生初步体验编程乐趣,了解如何编辑程序、编译程序和连接程序。
3、情感态度与价值观
让学生进一步领会算法和程序设计在解决问题中的地位,体会编写出程序的魅力,从而培养学生学习编程的兴趣。
二、重点难点
(1) 重点:
了解代码所包含的算法思想;
(2) 难点:
计算机是如何编辑程序、编译程序和连接程序的。
三、 教学环境
1、教材处理
上一节课学习了三种描述算法的方法,但这三种算法计算机无法识别,必须编写程序代码,方可实现用计算机解决问题。
本节课将学习用VB编写“韩信点兵”问题的算法,然后同学们通过自主学习,认识一下VB程序设计方面的知识。
2、预备知识
学生已掌握了用计算机解决问题的过程,并对算法及其作用有初步的认识。
3、硬件要求
建议本节课在多媒体电脑教室中完成,最好有广播教学系统或投影仪,为拓展学习,学生机应允许上互联网。
4、所需软件
学生机要安装VB6.0或以上版本。
5、所需课时
2课时(100分钟)
四、 教学过程
正课讲解
(一) 尝试用VB编写程序
1、 什么是VB?
——VB是一种基于BASIC语言的可视化程序开发工具。
2、 编写程序
⑴从桌面上启动VB,弹出“新建工程”对话框,从“新建”页面中选“标准EXE”,然后“打开“按钮,建立”标准EXE工程。
注:
为了避免打开时总是出现“新建工程”对话框,在首次启动时,勾选“不再显示这个对话框”。
⑵单击工具箱“CommandButton”的按钮,在Form1窗体中拖出一个“Command1”按钮。
Command1是命令按钮,它有6个属性、2个事件和4个方法。
属性
Caption
标题
Default
决定窗体的默认命令按钮
Enabled
决定对象是否响应用户生成事件
Style
控件的外观
Visible
决定对象是否可见
Picture
显示的图形
事件
方法
Click
单击
Drag
拖动
Refresh
刷新
KeyPress
字符键被单击
Move
移动
SetFocus
设置焦点,将当前焦点强制设置到文本框对象上
⑶选中此按钮,从属性窗口中将Caption改为“韩信点兵”。
⑷给按钮添加代码,在PrivateSubCommand1_Click()和EndSub之间添加代码:
DimNAsInteger‘声明N为整型
N=1‘赋初始值
Do(Nmod3=2)and(Nmod5=3)and(Nmod7=2)
Then‘满足条件打印N,不满足继续循环
PrintN
Exitdo
Endif
N=N+1
Loop
⑸从“运行”菜单中“单击”启动命令,运行程序。
运行后,单击“韩信点兵”按钮。
注:
运行时,不能修改程序代码。
实践题:
从“调试”菜单中点击“逐语句”命令(F8),然后按F8键试着单步运行程序,观察代码是如何运行的,程序执行注释部分吗?
在程序运行的过程中,用鼠标指向变量N,看看它的值有什么变化,为什么会这样变?
(二)算法、程序设计与程序设计语言之间的关系
⑴算法
提出问题:
什么是算法?
算法有哪些特征?
⑵程序设计——寻求解决问题的方法,并将其实现步骤写成计算机可执行的程序的过程。
⑶程序设计语言——泛指一切用于书写计算机程序的语言。
算法是程序设计的前提,它包含方法和步骤;
程序是实现算法中的思想的过程;
程序设计语言把算法转化为计算机认识的语言。
(三)认识程序设计语言
1、 发展过程
机器语言:
由一串“0”和“1”构成二进制代码。
汇编语言:
是一种符号化(英文助记符)的机器语言。
高级语言:
如Basic、C/C++、Fortran、Pascal、Cobol、Java等。
2、分类(按转换方式不同分类)
编译型语言
解释型语言
编写的源程序需要用编译程序先翻译成机器语言的目标程序,然后再由连接装配程序进行连接装配,生成可执行程序,这样才能被计算机执行。
源程序输入计算机后,运行源程序,相应的解释程序会逐条分析源程序中的语句,每解释一句由计算机执行一句。
C/C++、VB、Pascal、Cobol
Qbasic、Lisp
3、编辑程序、编译程序和连接程序
⑴编辑程序
包含内容:
一是将源程序逐个字符输入到计算机内存,二是修改源程序,三将修改好的源程序保存在磁盘文件中。
⑵编译程序:
将已编辑好的源程序(已存储在磁盘文件中)翻译成二进制的目标代码。
二进制代码在UNIX下后缀为“.o”的文件,在DOS下是后缀为“.obj”文件。
⑶连接:
将各模块的二进制目标代码与系统标准模块经连接处理后,得到具有有绝对地址的可执行文件,它是计算机直接执行的文件。
在UNIX下它以“.out”为后缀,在MS-DOS以下“.exe”为后缀。
执行过程:
五、 课外拓展
1、相关资源
东莞中学信息技术网:
普通高中技术课程网:
2、课外练习
写出“求100以内能被3整除的数”的算法,并试编写程序。
2-1节VB语言及程序开发环境
一、 教学目标
1、 知识与技能
掌握VB定义的常用的基本数据类型,常量与变量的定义方法,运算符、函数和表达式的描述。
熟悉VB程序设计语言的开发环境,能调试简单的VB程序。
2、 方法与过程
本节涉及到基础知识较多,所以要一个一个问题解决,从一个简单的求圆的面积的程序入手,从中分析VB程序一般包括的四部分,基本数据类型、常量与变量,运算符、函数和表达式,而且结合练习来加强对这些新知识的巩固。
通过介绍VB程序的开发环境中的菜单、常用工具和常用窗口等,再通过上机操作运行一个程序,让学生更容易上手。
3、 情感态度和价值观
这一节是学习VB程序的重要的入门课,授课时要注意结合学生的思路,逐个问题解决,不可一蹴而就。
二、 重点难点
1、 教学重点
(1) VB常用的的基本数据类型,常量与变量,运算符和表达式
(2) VB程序的开发环境
2、 教学
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法与程序设计 算法 程序设计 VB 教案集