【VB开源代码栏目提醒】:以下是网学会员为您推荐的VB开源代码-《算法与程序设计》VB教案集 - 大学课件,希望本篇文章对您学习有所帮助。
1-1节 计算机解决问题的过程一、 教学目标 1、 知识与技能 (1) 让学生了解算法、穷举法、程序设计语言、编写程序和调试程序等概念。
(2) 让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述。
(3) 让学生理解分析问题、设计算法、编写程序、调试程序这一用计算机解决问题的基本步骤, 认识其在算法与程序设计中的作用。
2、 方法与过程 (1) 培养学生发现旧知识的规律、方法和步骤,并把它运用到新知识中去的能力。
(2) 培养学生调试程序的能力。
(3) 培养学生合作、讨论、观摩、交流和自主学习的能力。
3、 情感态度和价值观 通过“韩信点兵”这个富有生动情节的实例和探究、讲授、观摩、交流等环节,让学生体验 用计算机解决问题的基本过程。
二、 重点难点 本节的重点用计算解决问题的过程中的分析问题、设计算法、和上机调试程序等步骤。
用计算机解决问题 的过程中的分析问题、设计算法也是本节的难点。
三、 教学环境 1、 教材处理 教学内容选用中华人民共和国教育部制订的《普通高中技术课程标准》(2003 年 4 月版)中信息技 术部分的选修模块 1“算法与程序设计”第一章的第一课“计算机解决问题的过程”。
教材选用《广东省 普通高中信息技术选修一:算法与程序设计》第三章第一节,建议“算法与程序设计”模块在高中一年级 下学期或高中二年级开设。
根据 2003 年 4 月版《普通高中技术课程标准》的阐述,“算法与程序设计”是普通高中信息技术的 选修模块之 1,它的前导课程是信息技术的必修模块“信息技术基础”。
学生在“信息技术基础”模块里 已经学习了计算机的基本操作,掌握了启动程序、窗口操作和文字编辑等基础知识。
学生可以利用上述的 基础知识,用于本节课的启动 Visual Basic 程序设计环境,输入程序
代码,运行程序等操作。
本节课“计 算机解决问题的过程”是“算法与程序设计”模块的第一节课,上好这节课是使学生能否学好“算法与程 序设计”这一模块的关键。
本节课的教学目的是让学生理解分析问题、设计算法、编写程序和调试程序等 用计算机解决问题的基本过程,认识其在算法与程序设计中的地位和作用,它也是后续课程如模块化程序 设计、各种算法设计等
课程的基础。
让学生在人工解题中发现分析问题、设计算法等步骤,并把它应用到用计算机解决问题中去,这是 构建主义中知识迁移的方法。
本节课还采用了探究、讲授、观摩、交流、阅读材料等多种教学活动的有机 结合的方法。
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 分钟学生讨论,教师在这过程中到各学习小组中,引导个别学习小组分析问题、写出解题步骤。
教师提问 23 个同学,从中逐渐引导出类似如下的分析问题和解题步骤,并给出算法的概念。
分析问题找出已知和未知、列出已 写出解题步骤 知和未知之间的关系 1、令 X 为 1。
2、如果 X 整除 3 余 1,X 整除 5 余 2, 设所求的数为 X,则 X 应满足: X 整除 7 余 4,这就是题目要求的数,则 X 整除 3 余 1 记下这个 X。
X 整除 5 余 2 3、令 X 为 X1(为算下一个作准备)。
X 整除 7 余 4 4、如果算出,则结束;否则跳转 2。
5、写出答案。
教师解释第 3 步“另 X 为 X1”并指出它与数学中的区别,并从上面的解题步骤中总结出穷举的算法。
教师:“刚才有些同学把题目解出来了,答案是 67,韩信作为大将军,统率士兵当然不止 67 人,下面我们来解决一个数据量稍大的问题。
” 展示题目: “韩信点兵”问题 2:求整除 3 余 1、整除 5 余 2、整除 7 余 4、整除 13 余 6、整除 17 余 8 的最小自然数。
给 2 分钟学生分析上述问题并写出算法,不用计算。
学生有了第 1 题的经验,很快会写出和第一题类似的算法。
如下:分析问题找出已知和未知、列出已 写出解题步骤 知和未知之间的关系 设所求的数为 X,则 X 应满足: 1、令 X 为 1。
X 整除 3 余 1 2、如果 X 整除 3 余 1, X 整除 5 余 2 X 整除 5 余 2, X 整除 7 余 4 X 整除 7 余 4, X 整除 13 余 6 X 整除 13 余 6, X 整除 17 余 8 X 整除 17 余 8,则记下这个 X。
3、令 X 为 X1。
4、如果算出,则结束;否则跳转 2。
5、写出答案。
教师:“上面的结果超过 1 万,人工计算要很长时间,在科技发达的今天,你想到什么?”(用计算机解题) (四)用计算机解决问题 教师:“计算机怎么样解决问题?用计算机解决问题,同样要经过分析
问题、
设计算法两步骤。
”在讲授过程中展示人工解题中分析问题和设计算法这两个步骤。
教师:“用计算机解题,是不是输入上面的算法?上面用自然语言描述的算法,计算机不懂,必须翻译成计算机的语言,这就是程序设计语言。
” 教师展示与用 Visual Basic 语言编写的程序作对照。
简单解释变 Y的作用,并提示学生程序设计语言是我们以后学习的重点。
本例用 Visual Basic 语言编写的程序请看教材如下: Private Sub Command1_Click Dim X As Integer Y As Integer X 1: Y 0 Do If X Mod 3 1 Then If X Mod 5 2 Then If X Mod 7 4 Then If X Mod 13 6 Then If X Mod 17 8 Then Y X End If End If End If End If X X 1 Loop Until Y gt 0 Print quot韩信统御士兵数:quot Y End Sub 教师:“程序编好以后,通过键盘输入计算机,并运行程序查看结果这个过程叫调试程序。
” (五)观摩 根据前面编制的程序,启动 Visual Basic 程序设计环境,输入程序
代码,进行调试,最后得到运行的结果。
具体操作步骤请看教材(第 4、5 页)。
要求同组内先完成的同学帮助还未完成的同学。
帮助的时候不能代劳,只能动口不动手。
教师
演示操作步骤。
学生上机调试程序,教师作个别指导,时间是 10 分钟。
操作时有些学生很快完成,有些学生则很慢,解决案是布置操作快的同学阅读教材并完成《计算机解决问题的过程》教学活动表中的填空题。
较慢的同学在他们调试了约 8 分钟后告诉他们可以通过网上邻居下载程序。
以便能在 10 分钟内调试出
程序。
(六)交流 教师:“前面我们学习了用计算机解决问题的过程,它和人工解有什么关系呢?同一
学习小组的同学一起探讨人工求解问题和用计算机求解问题的异同,并把讨论结果记录在《计算机解决问题的过程》教学活动表的“讨论记录”表中。
如下:关于求解问题的方式讨论记录 求解问题的方式 相同点 不同点 人工求解问题 用计算机求解问题 教师提问 23 个小组的讨论结果,并引导出大致如下的形式结果: 求解问题的方式 相同点 不同点 对题目进行解答、运算速度 人工求解问题 分析问题、设计算法、得出结 慢、不需要计算机等 果、验算结果等 编写程序、调试程序、运算速 用计算机求解问题 度快等 五、 课外拓展 相关资源 技术课程标准介绍:http://www.tyzx.com.cn/bmzy/jwc/uploadfile/kcbz/JISHU.PPT 东莞中学信息技术网:http://itedu.dgzx.net/Article_Class.ASPClassID32 普通高中技术课程网:http://blog.cersp.com/6002/category/4662.aspx 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-fma,计算出加速度 a d 输出所得的结果 方法二: a 测量出物体从静止开始移动的距离 s、时间 t b 将测量所得的数据输入计算机 c 利用公式:satt/2 计算出加速度 a 引入物
理学中的例子,激发 d 输出所得的结果 学生的学习兴趣,有助于学 2.算法的定义 生理解算法的概念 这种为解决某一问题而设计的确定的有限的步骤称为算法。
二、算法的描述 要把解决问题的步骤表达出来,有多种方法可以表达算法。
1.用自然语言表达 用自然语言表达算法,就是把算法的各个步骤,依次用人们熟悉的 自然语言表示出来。
引导出算法的概念 优点:容易理解 缺点:书写较烦、不确定性、对复杂的问题难以表达准确、不能被 介绍三种算法的表达方式, 计算机识别和执行 并对它们进行比较,分析优 2.用图形符号表达 缺点。
用图形符号表达算法必须要有一组规定统一、含义确定的专用符号。
常用的“流程图”所用的基本符号 给出流程图的基本符号, 图形符号 符号名称 说明 流线 对其功能和使用情况加以说 起始、终 表示算法的开 起始框: 明,以便今后在具体运用中 止框 始或结束 一流出线 的正确使用。
终止框: 一流入线 输入、输 框中标明输入、 只有一流入线和一 出框 输出的内容 流出线 处理框 框中标明进行 只有一流入线和一 什么处理 流出线 判定框 框中标明判定 一流入线两流出线 条件并在框外 (T 和 F 标明判定后的 )但同时只能一流出 两种结果的流 线起作用 向 流线 表示从某一框 到另一框的流 向 连接圈 表示算法流向 一条流线 出口或入口连 接点优点:直观、形象 给出流程图的作法,通过详缺点:不能被计算机识别和执行 细的解释说明使学生初步掌例 6-1-1:“物体在恒力作用下的加速度”的算法用下图表达。
握流程图的使用和基本画 法。
开始 Mm F1F F2f (F1-F2) a /M 输出 a 结束 3.用程序实现算法用计算机能理解和执行的程序设计语言把算法表示出来,然后把程序输入到计算机并执行,计算机才能按照预定的算法去解决问题。
不同类型的计算机能够识别的指令和语言不尽相同,即使对同一种计算机语言,不同类型的计算机对该语言的解释程序也有差异。
因此,用程序表示算法时,必须按照程序设计语言适用某类计算机的具体规定来进行。
例:用 Pascal 语言表示“从键盘输入一组数据并求该组数据的平均值”的程序如下: 了解计算机解决问题的一般Program ex_aver 过程,为今后用编程解决实Var I:integerxav:real 际问题打下基础。
Begin Av:0I:0 Do while not eofBegin Readlnx av:avx I:I1End av:av/I Writenln“The average value is :”avEnd 三、用计算机解决问题的一般过程 使用计算机解决一个问题,一般包括四个过程 1.需求分析 “需求分析”是指对要解决的问题进行详细的分析,弄清楚问题的 要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。
“需求分析”就是确定要计算机“做什么”。
2.设计算法 弄清楚要计算机“做什么”后,就要设计计算法,明确要计算机“怎 么做” 解决一个问题,可能有多种算法。
例如,数学题常常有“一题多解”。
这就是说,解决一个问题的算法可能不止一种。
这是,应该通过分 析、比较、挑选一种最优的算法。
3.编写程序 计算机只能接受并执行计算机程序设计语言编写的程序。
当我们为 解决一个问题确定了算法后,还必须将该算法用计算机程序设计语 言编写程序。
这个过程成为“编码”或“编程”。
4.上机调试与维护 编写完成的程序,不一定完全符合实际问题的要求,还必须在计算 机上运行这个程序,排除程序中可能出现的错误,才能得到结果。
这个过程称为“上机调试”。
即使是经过调试的程序,在使用一段时间后,仍然会被发现错误或 不足之处。
这就需要对程序做进一步的修改,使之更加完善。
这个 过程称为“维护”。
在实际解决问题时,上述四个步骤可能会根据不同的问题有所侧重。
五、课外拓展1、相关资源东莞中学信息技术网:http://itedu.dgzx.net/Article_Class.ASPClassID32普通高中技术课程网:http://blog.cersp.com/6002/category/4662.aspx 2、课外练习小明是小学一年级学生,请你为他设计一个小程序,专门用来练习加法运算。
具体讲就是让计算机产生两个整数并组成加法竖式,再从键盘输入一个结果数,最后让计算机来判断结果是否正确。
1-3 程序与程序设计语言一、教学目标1、知识与技能使学生知道什么是源
代码,并理解算法、程序设计、程序设计语言之间的关系,了解程序设计语言的发展及种类。
2、过程与方法使学生初步体验编程乐趣,了解如何编辑程序、编译程序和连接程序。
3、情感态度与价值观让学生进一步领会算法和程序设计在解决问题中的地位,体会编写出程序的魅力,从而培养学生学习编程的兴趣。
二、重点难点 (1) 重点:了解
代码所包含的算法思想; (2) 难点:计算机是如何编辑程序、编译程序和连接程序的。
三、 教学环境 1、教材处理 上一节课学习了三种描述算法的方法,但这三种算法计算机无法识别,必须编写程序
代码,方 可实现用计算机解决问题。
本节课将学习用
VB 编写“韩信点兵”问题的算法,然后同学们通过自 主学习,认识一下
VB 程序设计方面的知识。
2、预备知识 学生已掌握了用计算机解决问题的过程,并对算法及其作用有初步的认识。
3、硬件要求建议本节课在多媒体电脑教室中完成,最好有广播教学
系统或投影仪,为拓展学习,学生机应允许上互联网。
4、所需软件学生机要安装
VB6.0 或以上版本。
5、所需课时2 课时(100 分钟) 四、 教学过程正课讲解(一) 尝试用
VB 编写程序1、 么.