当前位置:文档之家› 算法和算法的描述

算法和算法的描述

算法和算法的描述
算法和算法的描述

算法和算法的描述

驷马中学王亚丹

一、教材分析:

1.本教材采用广东版的《信息技术(选修1)算法与程序设计》。本节内容是第一章《揭开计算机解决问题的神秘面纱》的第二节“算法和算法的描述”。

2.本节的作用和地位:让学生重温算法的概念,经历用自然语言、流程图或伪代码等方法描述算法的过程,体验在用计算机解决问题中,不同的算法会产生不同的运行效果。

二、教学目标:

1、知识与技能目标:

(1)、认识算法的概念和特征。

(2)、体验算法描述的各种方法

(3)、掌握分析问题、设计算法的技能和方法

(4)、关注算法设计的意义。

(5)、体验不同算法的程序效率。

2、过程与方法目标:

经历用三种方法描述算法的过程,体验在用计算机解决问题的过程中所带来的不同的思维方式和学习方式。

3、情感态度与价值观目标:

培养学生在解决问题的过程中,采用引导学生多方位处理信息,提高学生分析问题和解决问题的能力。

三、教学重点和教学难点:

1、重点分析

让学生经历用自然语言、流程图或伪代码等方法描述算法的过程。

2、难点分析

用流程图来描述算法。

四、教学方法分析:

采用边讲边练、探究和学生自主学习相结合的教学方法。

五、学习方法分析:

通过自主学习和合作学习,学生可以看到问题的不同侧面,通过不同的途径来分析问题,设计算法,解决问题,从而开阔学生的思路。

六、教学过程

第二节 算法和算法描述

第二节算法和算法描述 一、基本说明 1模块:高中信息技术基础 2年级:高中二年级 3所用教材版本:上海科技教育出版社 4所属的章节:第一章第二节 5学时数:40分钟(多媒体教室授课) 二、教学设计 1、教学目标: (1)、知识与技能目标: ①、了解算法的基本概念和特点; ②、掌握算法的描述方法;能用自然语言、流程图、伪代码描述算法;(2)、过程与方法目标: 通过分析实际生活中的问题,理解和熟悉自然语言、流程图和伪代码等清晰描述解决问题的过程,确立算法的概念; (3)、情感态度价值观目标: ①、通过对生活中具体实例的分析和解决,激发学生的学习兴趣。培养学生的 自主探究能力; ②、通过算法描述,锻炼学生自行分析问题及解决问题的能力,培养学生严谨 的思维习惯; ③、增强学生的逻辑思维能力和表现意识,鼓励学生分享思想和反思自我的学 习理念。 2、内容分析: 本课是高二第一章的内容,也是整个《算法与程序设计》模块的基础知识,本节内容对后续章节的学习起着十分重要的作用,让学生从整体上计算机解决 实际问题的过程;因本节内容在高一数学模块三第一章中学生已有初步接触, 比较简单,教师可根据具体情况有所深入地进行授课。

3、学情分析: 学生具有一定的分析问题、解决问题的能力,并且在高一数学模块三中对算法的概念和用流程图描述算法有初步的了解,且已初步了解面向过程的三种 结构,但未对算法形成抽象认识和理解;还不能对算法做出恰当的描述。 4、设计思路: 本节课是一堂理论性的课,又缺乏理论的深度,如果只由教师讲解就会显得比较枯燥,因此本堂课的设计思路是从具体的案例入手,引导学生进行思考、讨论,最后得出基本的结论,形成一定的概念,达到理解和应用的目的。教师 的主要任务在于积极引导,调动学生的积极性。 三、教学过程

算法与算法描述教学设计

算法与算法描述教学设 计 公司内部档案编码:[OPPTR-OPPT28-OPPTL98-OPPNN08]

算法与算法描述教学设计 一、教学目标 (一)知识与技能 1.充分理解掌握算法的概念及其特点 2.学会用自然语言来准确地描述算法 3.认知流程图的六种基本符号,用流程图描述简单的算法 4.理解科学合理的选择和设计算法 (二)过程与方法 1.通过问题的解决,培养学生观察流程图问题、分析问题和解决问题的能力 (三)情感态度与价值观 激发学生学习算法设计的兴趣,使学生积极参与,发挥他们的主动性,激发他们的求知欲;认识计算机只是工具,合理的指挥和控制计算机来解决学习和生活中的问题。 二、内容分析

教学重点: 1. 充分理解掌握算法的概念及其特点 2. 学会用自然语言和流程图来准确地描述算法 教学难点: 学会用自然语言和流程图来准确地描述算法 三、学生分析 在必修模块“编制计算机程序解决问题”部分以及本章第一节的学习中,学生已经经历了用计算机解决问题的基本过程,对VB开发环境有所了解,这些都为本节课的学习提供了良好的基础。(学生对本节内容的学习具备一定的基础知识和学习经验) 本节课有关知识、问题与数学学科联系紧密,学生具有相关的数学基础,因此理解起来相对容易。教学中要关注全体学生,变学生的个体差异为资源,发挥同伴互助作用,共同提高教学效率。 四、教学策略 1、教学方法:讲授法、演示法、任务驱动、情境教学

2、学习方法:协作学习、自主学习 五、教学过程

六、教学反思: 本课充分发挥了学生的主观能动性,在教学中教师一般是提出问题让学生思考探究、注重实践、互动交流;另外举例生动形象,简单明了,学生学习起来兴趣浓厚,学生在轻松愉快的过程中较好的掌握了算法的概念,理解算法的设计和优劣的选择。学生初步接触编程,设计好这堂课的内容,能够激起学生学习编程的兴趣。

1-2算法的描述与设计--教案

1-2节算法描述和设计第2课时 一、【教学目标】 1、知识和技能 (1)了解算法的定义及其表达方法; (2)认知流程图的六种基本符号; (3)理解计算机解决问题的一般过程。 2、方法和过程 (1)理解用不同的表达方法描述算法的优缺点; (2)掌握用流程图描述简单的算法。 3、情感态度和价值观 以生活中的实例引入算法,激发学生的学习兴趣,培养学生的主动探究能力。 二、重点难点 (一)教学重点 1、算法的定义; 2、算法的三种表达方法; 3、流程图的六种基本符号; 4、用流程图描述简单的算法。 (二)教学难点 5、算法的描述(三种); 6、用流程图描述算法。 三、教学环境 1、教材处理 通过物理学中的实例了解算法的概念和算法的描述方法掌握用计算机解决实际问题的一般步骤。用多媒体教学网开展教学;用“先自主探究,后教学指导”的方法进行教学。 2、所需软件:学生机要安装VB6.0或以上版本。 3、教学方法:任务驱动法 学时:1学时 四、教学过程 教学内容预期目标导入: 一、对算法的初步了解 1.一个简单的物理问题: 书中例6-1-1:求物体在恒力作用下的加速度。 根据在物理课中学过的知识,要解决这个问题有多种方法:(学生讨论) 方法一: a) 测量出物体的质量m、拉力F和滑动摩擦力f b) 将测量所得的数据输入计算机 c) 根据牛顿第二定律F-f=m*a,计算出加速度a d) 输出所得的结果 方法二: a) 测量出物体从静止开始移动的距离s、时间t b) 将测量所得的数据输入计算机引入物理学中的例子,激发学生的学习兴趣,有助于学生理解算法的概念 引导出算法的概念 介绍三种算法的表达方式,

算法设计与分析C++语言描述(陈慧南版)课后答案

第一章 15P 1-3. 最大公约数为1。快1414倍。 主要考虑循环次数,程序1-2的while 循环体做了10次,程序1-3的while 循环体做了14141次(14142-2循环) 若考虑其他语句,则没有这么多,可能就601倍。 第二章 32P 2-8.(1)画线语句的执行次数为 log n ????。(log )n O 。划线语句的执行次数应该理解为一格整体。 (2)画线语句的执行次数为 111 (1)(2) 16 j n i i j k n n n ===++= ∑∑∑。3()n O 。 (3 )画线语句的执行次数为 。O 。 (4)当n 为奇数时画线语句的执行次数为 (1)(3) 4 n n ++, 当n 为偶数时画线语句的执行次数为2 (2)4 n +。2()n O 。 2-10.(1)当1n ≥时,225825n n n -+≤,所以,可选5c =,01n =。 对于0n n ≥,22 ()5825f n n n n =-+≤,所以,22 582()n n n -+=O 。 (2)当8n ≥时,2222 582524n n n n n -+≥-+≥,所以,可选4c =,08n =。对于0n n ≥, 22()5824f n n n n =-+≥,所以,22582()n n n -+=Ω。 (3)由(1)、(2)可知,取14c =,25c =,08n =,当0n n ≥时,有22212582c n n n c n ≤-+≤,所以 22582()n n n -+=Θ。 2-11. (1) 当3n ≥时,3 log log n n n <<,所以()20log 21f n n n n =+<,3 ()log 2g n n n n =+>。可选21 2 c = ,03n =。对于0n n ≥,()()f n cg n ≤,即()(())f n g n =O 。注意:是f (n )和g (n )的关系。 (2)当4n ≥时,2 log log n n n <<,所以2 2 ()/log f n n n n =<,2 2 ()log g n n n n =≥。可选1c =,04n =。对于0n n ≥,2 ()()f n n cg n <≤,即()(())f n g n =O 。 (3)因为log log(log )()(log ) n n f n n n ==,()/log log 2n g n n n n ==。当4n ≥时,log(log )()n f n n n =≥,

高中算法与算法的描述

第一章算法与算法的描述 1.算法的定义 算法:就是解决问题的思想方法,对解题过程的精确描述。计算机解决问题的步骤为分析问题、设计算法、编写程序、调试程序。算法是程序设计的“灵魂”,最核心过程。 2.法的特征 一个算法应该具有以下五个重要的特征: 1、有穷性:一个算法必须保证执行有限步之后结束; 2、确定性:算法的每一步骤必须有确切的定义; 3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件; 4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的; 5、可行性:算法中执行的任何计算步都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成;(也称之为有效性) 3.算法的描述方法 算法的描述:可分多种表达方法,一般用自然语言、流程图和伪代码进行描述。 (1)自然语言描述法:指用人们日常生活中使用的语言(本国语言),用自然语言描述符合我们的习惯,且容易理解。 例1:求圆的周长和面积 算法如下:(自然语言描述法) (1)输入半径r ; (2) 计算周长c=2*π*r ; (3) 计算面积 s=π*r*r ; (4) 输出周长c,输出面积s ; (5) 结束 例2:工人每天工作8小时,每小时9元,超过8小时的每小时增加15%的加班费,计算工人每天的应发的日工资。(1)输入工作小时X (2)判断X值,分别计算 ●X小于8,工资=X*9 ●X大于8,工资=X*9+(X-8)*9*0.15 (3)输出工资 (4)结束 练习:求三个数中的最大数。(用自然语言描述) (2)流程图描述:也称程序框图,它是算法的一种图形化表示方法。且描述算法形象、直观,更易理解。

算法和算法的描述教案

算法和算法的描述(教学案例) 教材分析: 这节课内容主要是一些概念和理论,而算法的概念和理论都太抽象,讲起来非常的枯燥乏味,那么就要把这些抽象的东西变得通俗易懂,使学生能轻松而又愉快的接受并理解。 学生分析: 学生基本上没有接触过编程,那么在高中阶段初步接触编程,学生首先会感到很深奥,看到书中的程序语句,尤其是看到后面的长一点的程序语句更是觉得可怕,那教师必须要考虑在授课中如何正确引导,以什么样的方式进行。学生有没有兴趣学,往往看这个课是不是有意思,难不难学,一看难学又乏味,就开始产生厌学的情绪。 教学目标: 引导学生对编程的兴趣,理解算法的概念和如何科学合理的选择和设计算法,为程序设计打好基础。 教学重点: 算法的概念、算法的设计和选择。 教学难点: 如何科学合理的选择和设计算法。 教学方法: 与学生进行互动探讨式教学,以趣味智力题激发学生探索解决问题的兴趣,以故事事例和具体的程序运行对比,引导学生一步步的思考,从而总结出算法的概念,以及如何设计和选择算法,充分调动学生的主观能动性和探究学习能力。 教学过程: 1、引导学生对编程的兴趣 (1)教师:同学们喜欢玩电脑游戏吗? (2)学生:喜欢!(说到游戏学生总是表现出很浓的兴趣。) (3)教师:在上机练习课的时候,总发现有个别同学偷偷的玩游戏,其实你们喜欢,老师也很喜欢,那么同学们想不想自己编个游戏来玩呀? (4)学生:会不会很麻烦!(学生表现出好奇,又对编程心里还没有底。) (5)教师:不用担心,编程并不像你们所想像的那样难,很快你们就会编一些小游戏程序了。其实编程是件非常有意思的事情,在以后的学习中你会发现自己越来越喜欢编程,甚至会着迷的。 2、算法的概念 (1)教师:幻灯片出示一个经典的趣味性例子, 有一个牧羊人带着一头羊,一只狼和一颗大白菜准备过河,他找到一只很小的船,每次只能带一样东西过去,可是如果让狼与羊单独在一起,狼会吃羊,让羊与白菜单独在一起,羊会吃白菜,牧羊人应如何过河? (2)教师:分组讨论,前后四个同学为一组,把你们的橡皮擦放到一块,分别写上狼、羊、白菜,你们自己是牧羊人,现在请同学们来设计一个方案,把3样东西安然无恙的带过河。我们来比一比看哪组同学最快完成。 课堂立即活跃起来,同学们把它当作一种游戏全都投入进去了,积极思考起来。 (3)很快就有学生举手回答。 过河的方案: 第一步:人和羊过河,人返回,留下羊; 第二步:人和狼过河,人和羊返回,留下狼; 第三步:人和菜过河,人返回,留下菜; 第四步:人和羊过河。 (4)教师:同学们这个方案行不行? (5)学生:行。

算法和算法的描述

算法和算法的描述 一、教学内容 算法和算法的描述 二、教学目标 1.充分理解掌握算法的概念及其特点 2.学会用自然语言来准确地描述算法 3.认知流程图的六种基本符号,用流程图描述简单的算法 4.理解科学合理的选择和设计算法 5.通过问题的解决,培养学生观察流程图问题、分析问题和解决问题的能力 三、重点难点 1.学会用自然语言和流程图来准确地描述算法 2.算法的三种基本结构 四、教学过程 (一)算法的的概念及自然语言描述 教师活动:说明”狼菜羊过河”的游戏规则 学生活动:前后四个同学为一组,设计方案,比一比看哪组同学最快完成。记录实际过河过程,完成学案中相关应部分内容的填写

教师活动:指导学生将自己的方案用规范的自然语言的形式表示(学案)样例:过河的方案: 第一步:人和羊过河,人返回,留下羊; 第二步:人和狼过河,人和羊返回,留下狼; 第三步:人和菜过河,人返回,留下菜; 第四步:人和羊过河。 教师活动:收集学生的过河方案,并将其用自然语言的形式展示于黑板上教师小结: 1、算法的概念 2、算法的特征 3、算法的择优 (二)用流程图描述算法 教师活动:介绍流程图的作用,讲解流程图所用的基本符号及功能 学生活动:在学案中完成流程图的拼接 教师活动:点评学生流程图,对照自然语言表达归纳流程图表达的优缺点(三)用程序实现算法 教师讲解:编写程序即把人们设计的算法转换成计算机能够识别的代码。

(四)算法的三种基本结构 1、顺序结构 2、分支结构 3、循环结构 (五)课堂小结 1.算法形成的过程:自然语言表示的算法----流程图表示的算法----算法的程序表示 五、教学反思 1、整个课堂教学气氛非常活跃,条理清楚,不同层次的学生都能积极参与到课堂讨论中来。主要得益于两个方面:一是利用两个生动且富有挑战性的经典问题,二是教师的演示和学生动手调试程序环节,将学生牢牢的吸引住;同时本课很多内容都是基于高一数学模块三中的已学知识,知识点的难度小。如算法及其描述方式在高一数学中已有介绍,所以整堂课学生的参与度高。 2、本节课利用问题导学法进行教学,让学生对问题进行探究,有效的调动了学生的学习积极性。 3、本节课的课堂气氛没有预想中的好,可能与教学内容和问题的设置有一定的关系,这也从一定程度上反映出学生对于算法存在畏惧心理,对于老师提的问题不敢大胆发言。

高中信息技术算法和算法描述教案沪教版

算法和算法描述 一、基本说明 1模块:高中信息技术基础 2年级:高中二年级 3所用教材版本:上海科技教育出版社 4所属的章节:第一章第二节 5学时数: 40分钟(多媒体教室授课) 二、教学设计 1、教学目标: (1)、知识与技能目标: ①、了解算法的基本概念和特点; ②、掌握算法的描述方法;能用自然语言、流程图、伪代码描述算法; (2)、过程与方法目标: 通过分析实际生活中的问题,理解和熟悉自然语言、流程图和伪代码等清晰描述解决问题的过程,确立算法的概念; (3)、情感态度价值观目标: ①、通过对生活中具体实例的分析和解决,激发学生的学习兴趣。培养学生的自主 探究能力; ②、通过算法描述,锻炼学生自行分析问题及解决问题的能力,培养学生严谨的思 维习惯; ③、增强学生的逻辑思维能力和表现意识,鼓励学生分享思想和反思自我的学习 理念。 2、内容分析: 本课是高二第一章的内容,也是整个《算法与程序设计》模块的基础知识,本节内容对后续章节的学习起着十分重要的作用,让学生从整体上计算机解决实际问题的过程;因本节内容在高一数学模块三第一章中学生已有初步接触,比较简单,教师可根据具体情况有所深入地进行授课。 3、学情分析:

学生具有一定的分析问题、解决问题的能力,并且在高一数学模块三中对算法的概念和用流程图描述算法有初步的了解,且已初步了解面向过程的三种结构,但未对算法形成抽象认识和理解;还不能对算法做出恰当的描述。 4、设计思路: 本节课是一堂理论性的课,又缺乏理论的深度,如果只由教师讲解就会显得比较枯燥,因此本堂课的设计思路是从具体的案例入手,引导学生进行思考、讨论,最后得出基本的结论,形成一定的概念,达到理解和应用的目的。教师的主要任务在于积极引导,调动学生的积极性。 三、教学过程 教学阶段教师活动学生活动设计意图 一、引入1、出示渡河游戏,要求学生给出 解决的办法。 2、怎样在全班同学中找出最高的 同学? 积极参与,发表观 点,说出解决的办 法。 运用学生感兴趣 的事物,激发学 生的学习兴趣。 二、新课讲解(一)算法的概 念通过总结两个实例的算法分析过 程,引出算法的概念。 观看课件,与教师 探讨算法的意义。 引导学生将感性 认识提升为理性 认知。 (二)算法的特 征 展示高一数学模块三第一章的三 个例题,找出算法还具有两个特 点:一个算法有0或多个输入、1 或多个输出。 继续总结渡河游戏,得出算法具有 有穷性、确定性和可行性。 思考和分析范例, 领会算法的特征。 回顾实例,寻找规 律,共同总结。 调动学生对生活 的认识和体会, 融入对算法的学 习和理解。 (三)算法的表示——自然语 言利用渡河实例,细致分析算法,介 绍自然语言描述算法设计。 领会算法设计的过程:提出问题、 分析问题、设计算法。 提出问题:“求三个数中值最大的 数。”——分析问题——用自然语 言描述出算法。 分步骤讨论和分 析,会运用自然语 言设计实例的算 法。 对实例进行初步 算法设计,自然 语言易于理解, 为后续其他抽象 描述方法作铺 垫。 (四)算法的表示——流程图总结自然语言的优缺点,引出流程 图的表示方法,介绍流程图的基本 结构,分析其逻辑关系的表示。 提出问题:“求三个数中值最大的 数。”——分析问题——用伪代码 描述出算法。 积极探索、分析, 运用流程图描述 该问题的算法。 对比学习,加深 对各类算法设计 描述方法的认 识,培养学生设 计算法的能力。

高中信息技术《3.2算法及其描述》20191009-学案

【学习目标】 1.理解算法的概念与特征。 2.能初步利用算法解决简单的问题。了解算法在计算机解决问题中的地位和作用。 3.经历用自然语言、流程图或伪代码等方法描述算法的过程。 4.了解算法描述与算法的程序实现之间的区别。 5. 习惯计算机思维,培养学生思考问题的严谨性和逻辑性。 【基础知识梳理】 一、 算法 1.算法的概念 算法是在 求解某一问题所使用的一组 的规则。 即用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。 【自学探究】 一、 完成任务一:渡河问题的探究,总结过程,理解算法的概念。 注意: 要写明确共几个步骤,并标明序号。 渡河步骤: 二、 完成任务二:鸡兔同笼问题的探究。 注意: 1.要写明确共几个步骤,并标明序号。 2.总结出这类问题的通用解决办法。(头的数量为m ,脚的数量为n ,无论给出什么数据,很快就能算出兔子的只数X 和鸡的只数Y ) 鸡兔同笼问题的解决方法: 【使用时间】 第6周 【编 辑】郭 亮 周治国 【审 核】 高一信息组 第三章 算法基础 3.2算法及其描述 项目:体验算法奥秘,让 数学题活起来

【精讲点拨】 2.算法的特征 1)有穷性。任何一种提出的解题方法都是在有限的操作步骤内可以完成 的,哪怕是失败的解题方法。一个算法在执行有穷步之后必须结束。 2)确定性。算法执行的每一个步骤必须有确切的定义,不能出现模棱两 可的情况。 3)数据输入。一个算法必须有输入。 4)数据输出。一个算法必须有输出。以反映对输入 数据加工后的结果,没有输出的算法是毫无意义的。 5)可行性。解题方法中任何一个操作步骤可以被分解为的操作步骤,而且可以在现有计算机软硬件条件下和逻辑思维中都能够 实施实现。 二、算法的描述 1.描述算法的常用方法 1)用自然语言描述算法 是人们日常所用的语言,如汉语、英语、德语等,使用这些语言不用专门训练,所描述的算法也通俗易懂。 2)用流程图描述算法 使用流程图描述算法,让人感到算法的流程描述清晰简洁,容易表达选择结构;它不依赖于任何具体的计算机和计算机程序设计语言,从而有利于不同环境的程序设计。

第三章第二节算法及其描述(一)

山东省青州实验中学校训:公善勤实 课题名称:算法及其描述(一) 命题人、使用人: 审核人:使用日期: 学习目标 了解算法的概念,能够对算法进行描述。 -------------------------------------------------------------------------------------------------------- -------------- 【上节重点回顾】 利用计算机解决问题的正确步骤是()1设计算法2调试运行程序3分析问题4编写程序 A、1 2 3 4 B、3 1 2 4 C、3 4 2 1 D、3 1 4 2 【导入】 有一个农夫带着一头羊,一匹狼和一颗大白菜准备过河,他找到一只很小的船,每次只能带一样东 西过去,可是如果让狼与羊单独在一起,狼会吃羊,让羊与白菜单独在一起,羊会吃白菜,农夫应如何过河?请同学们以小组为单位,讨论一下农夫该如何才能安全的渡河,写下你们的渡河方案,看看哪一组最快? 【任务一】结合课本P48-51总结算法的概念及描述。 1、算法:是指在求解某一问题所使用的一组的。对计算机来说,算法就是用计算机求解某一问题的,是能被机械地执行的的集合。 2、算法的描述有三种:、、。 【任务二】 设计一个算法,解决鸡兔同笼问题:在笼中有鸡、兔若干,已知有头a个,有脚b只,求各有多少只鸡和兔。 一、用自然语言描述算法(不常用) 用自然语言描述算法就是用人们日常所用的语言,如汉语、英语等来描述算法。 (1)开始 (2)输入a和b的值 (3)求x=2a-b/2 (4)求y=b/2-a (5)输出x、y的值 (6)结束 二、用流程图描述算法(最常用的方法,需要大家掌握) 用流程图描述算法是用程序框图来描述算法的一种表示方法。 图形名称功能 开始/结束表示算法的开始或结束 输入/输出表示算法中变量的输入与输出 处理表示算法中变量的计算与赋值 判断表示算法中的条件判断 流程线表示算法中的流向 连接点表示算法中的转接

第1课 算法及其描述方法

第1课算法及其描述方法 教学设计思想: 教学目标: (1)知识与技能: ①理解算法的概念 ②掌握算法的五个特征 ③了解算法的三种描述方法 ④掌握流程图的各个框图的功能及画法 (2)过程与方法: ①学生通过联系实际生活、协作讨论例题的方法,理解算法的概念和掌握算法的特 征。 ②学生通过思考和参与课堂练习的方法,熟练掌握流程图的各个框图的功能及算 法。 (3)情感态度与价值观: ①学生通过联系日常生活,体会和理解算法的概念,知道算法在程序设计中的重要 性。对常见事物和现象能提出问题,深入思考,进行自主和探究式学习 ②学生之间通过协作学习和课堂讨论,培养学习的积极性和同学之间的协作性。 教学重点: 流程图表示算法 教学难点: 流程图表示算法 教学过程设计: 1、算法的概念 讨论:用没有刻度的3毫升量杯和5毫升量杯如何量出1毫升的水?请写出自己的解决步骤。 方法一: ①将3毫升的量杯装满 ②将3毫升量杯中的水注入5毫升量杯 ③将3毫升的量杯装满 ④将3毫升量杯中的水注入5毫升量杯,注满后,3毫升量杯中剩余的就是1毫升水。 方法二: ①将5毫升的量杯装满 ②将5毫升量杯中的水注入3毫升量杯,注满后5毫升量杯中剩余2毫升水 ③将3毫升量杯倒空

④将5毫升量杯中剩余的2毫升注入3毫升量杯 ⑤将5毫升量杯装满 ⑥将5毫升量杯中的水注入3毫升量杯,注满后5毫升量杯中剩余4毫升水 ⑦将3毫升量杯倒空 ⑧将5毫升量杯中的水注入3毫升量杯,注满后5毫升量杯中剩余1毫升水 结论: (1)算法是为解决某一问题而设计的确定的、有限的求解步骤。 (2)算法不是唯一的,针对同一问题的算法可以有多种。 2、算法的特征: (1)有穷性 广义地说,“有穷性”一般指操作步骤的数量有限或能在合理的时间范围内完成全部操作。算法可以有重复执行的步骤,只要这些步骤的执行能够终止。有些算法虽然是有穷的,但它所花费的时间如果超出了合理的限度,如天气预报采用的算法若要几个月后才能计算出来,那就不能算是有效地算法。 例1:判断下列算法是否符合算法的特征 ①给s赋值为1 ②将s的值增加1 ③重复步骤② 解答:该算法的步骤②将被重复执行无穷次,不符合有穷性 (2)确定性 算法中的每个步骤必须有确切的含义,而不应当是含糊的、模棱两可的。 例2:判断下列算法是否符合算法的特征 ①L=10 ②输出L/自然数 解答:正整数没有具体指明是哪个数,不符合算法的确定性 (3)可行性 算法中每一个步骤都是要能够实际做到的,而且是在有限的时间内完成。 例3:判断下列算法是否符合算法的特征 ①x= -2 ②计算x的平方根 解答:x是负数,没有平方根,该算法不可行,不符合算法的可行性。 (4)有0个或多个输入

算法的表示方法

算法的表示方法 算法的常用表示方法有如下三种: 1、使用自然语言描述算法 2、使用流程图描述算法 3、使用伪代码描述算法 我们来看怎样使用这3种不同的表示方法去描述解决问题的过程,以求解sum=1+2+3 +4+5……+(n-1)+n为例。 第1种:使用自然语言描述从1开始的连续n个自然数求和的算法 ①确定一个n的值; ②假设等号右边的算式项中的初始值i为1; ③假设sum的初始值为0; ④如果i≤n时,执行⑤,否则转出执行⑧; ⑤计算sum加上i的值后,重新赋值给sum; ⑥计算i加1,然后将值重新赋值给i; ⑦转去执行④; ⑧输出sum 的值,算法结束。

从上面的这个描述的求解过程中,我们不难发现,使用自然语言描述算法的方法虽然比较容易掌握,但是存在着很大的缺陷。例如,当算法中含有多分支或循环操作时很难表述清楚。另外,使用自然语言描述算法还很容易造成歧义(称之为二义性),譬如有这样一句话——“武松打死老虎”,我们既可以理解为“武松/打死老虎”,又可以理解为“武松/打/死老虎”。自然语言中的语气和停顿不同,就可能使他人对相同的一句话产生不同的理解。又如“你输他赢”这句话,使用不同的语气说,可以产生3种截然不同的意思,同学们不妨试试看。为了解决自然语言描述算法中存在着可能的二义性,我们提出了第2种描述算法的方法——流程图。 第2种:使用流程图描述从1开始的连续n个自然数求和的算法 从上面的这个算法流程图中,可以比较清晰的看出求解问题的执行过程。在进一步学习使用流程图描述算法之前,有必要对流程图中的一些常用符号做一个解释。

流程图的缺点是在使用标准中没有规定流程线的用法,因为流程线能够转移、指出流程控制方向,即算法中操作步骤的执行次序。在早期的程序设计中,曾经由于滥用流程线的转移而导致了可怕的“软件危机”,震动了整个软件业,并展开了关于“转移”用法的大讨论,从而产生了计算机科学的一个新的分支学科——程序设计方法。 无论是使用自然语言还是使用流程图描述算法,仅仅是表述了编程者解决问题的一种思路,都无法被计算机直接接受并进行操作。由此我们引进了第三种非常接近于计算机编程语言的算法描述方法——伪代码。 第3种:使用伪代码描述从1开始的连续n个自然数求和的算法 1) 算法开始; 2) 输入n 的值; 3) i ← 1;/* 为变量i 赋初值*/ 4) sum ← 0;/*为变量sum 赋初值*/ 5) do while i<=n /*当变量i <=n 时,执行下面的循环体语句*/

了解算法和算法的描述方法 教案

项目五描述洗衣机的洗衣流程 ——了解算法及其基本控制结构 一、教学目标 1、知识与技能 帮助学生认识算法的概念与特征,了解算法的描述方法以及学会运用适当的描述方法去表示简单算法。 2、过程与方法 通过教师讲授和引导学生自主学习的方式,帮助学生快速地掌握算法的概念和特征;以及采用合作探究的方式,让学生掌握使用流程图来描述算法。 3、情感态度与价值观 通过认识算法和学习描述算法的方法来培养学生的算法意识和程序设计的思维,以及探索创新的精神和团结合作的意识。 二、教学重点和难点 1、重点:算法的特征和算法的描述方法。 2、难点:使用流程图来描述算法。 三、教学方法 讲授法、自主学习法和练习法。 四、教学准备 1、软硬件环境:投影仪。 2、教学素材:教学演示课件和导学案。 五、教学过程 (一)新课导学 从洗衣流程认识算法:教师进行提问,并根据学生的回答展示手工洗衣流程“故事板”,引出“算法”的概念。

(二)探究新知 1、算法的概念 算法:是指在有限步骤内解决问题所使用的方法。 2、算法的特征 ①有穷性:首先,算法不能是无限循环的;其次,算法必须在合理的时间范围内结束。一个算法在执行有限步骤后在有限时间内能够实现,这就是算法的有穷性。 ②确定性:一个算法中的每一个步骤的表述都应该是确定的、没有歧义的。 ③可行性:是指每一个步骤都能够有效的被机器按部就班地执行,并最终得到正确的结果。 ④有零个或多个输入:输入就是算法在执行时从外界获得的数据,它们是算法执行的某些初始状态。输入可以是零个,也可以是多个。 ⑤有一个或多个输出:输出就是算法执行的结果,也就是按照算法对数据进行处理所得到的结果。没有输出的算法是没有任何意义的。 3、算法的描述方法 (1)自然语言:是指人们日常生活中所使用的语言。 (2)流程图:由一些简单的框图组成,框图用来表示算法的步骤。 (3)伪代码:是一种算法描述语言,比较容易被开发人员理解。 4、流程图符号及其作用

高中算法与算法的描述知识分享

高中算法与算法的描 述

第一章算法与算法的描述 1.算法的定义 算法:就是解决问题的思想方法,对解题过程的精确描述。计算机解决问题的步骤为分析问题、设计算法、编写程序、调试程序。算法是程序设计的“灵魂”,最核心过程。 2.法的特征 一个算法应该具有以下五个重要的特征: 1、有穷性:一个算法必须保证执行有限步之后结束; 2、确定性:算法的每一步骤必须有确切的定义; 3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件; 4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的; 5、可行性:算法中执行的任何计算步都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成;(也称之为有效性) 3.算法的描述方法 算法的描述:可分多种表达方法,一般用自然语言、流程图和伪代码进行描述。 (1)自然语言描述法:指用人们日常生活中使用的语言(本国语言),用自然语言描述符合我们的习惯,且容易理解。 例1:求圆的周长和面积 算法如下:(自然语言描述法) (1)输入半径r ; (2) 计算周长c=2*π*r ; (3) 计算面积 s=π*r*r ; (4) 输出周长c,输出面积s ; (5) 结束 例2:工人每天工作8小时,每小时9元,超过8小时的每小时增加15%的加班费,计算工人每天的应发的日工资。 (1)输入工作小时X (2)判断X值,分别计算 ●X小于8,工资=X*9 ●X大于8,工资=X*9+(X-8)*9*0.15 (3)输出工资 (4)结束 练习:求三个数中的最大数。(用自然语言描述) (2)流程图描述:也称程序框图,它是算法的一种图形化表示方法。且描述算法形象、直观,更易理解。

算法和算法的描述

《算法和算法的描述》教学设计 东平明湖中学——董爱平 一、教学理念: 本节课的教学设计充分体现了《普通高中信息技术课程标准》中的基本理念,注重教学过程中三维目标的渗透,采用了以学生的学习和发展为中心,基于建构主义理论的任务驱动、情境教学、赏识教学等教学方法,突出自主、合作、探究等学习方法;强调信息技术与生活实际的联系,培养学生的逻辑思维能力、解决问题的能力等;设置多种形式的评价方式,让学生掌握学习内容的同时,形成交流与评价的能力。 二、教学分析: 1.教材分析: 本节课是广东教育出版社出版的普通高中《信息技术选修1算法与程序设计》第一章第2节的部分教学内容,包括有算法的概念、描述算法的过程、算法的特征等。本章是全书的开篇和概述,而本节内容是本章的重要环节,是对前一节知识内容的进一步学习,也为后续章节的学习和开展多元化交流与合作做好必要的准备。 2.学情分析: 本节课的教学对象是高二年级学生,他们已具备了一定的逻辑思维、分析问题、表达思想等能力。在本课前一节里,学生已基本掌握了用计算机解决问题的步骤等基础知识,为本节课的学习提供了良好的基础。 3.课时安排:1课时 三、教学目标: 1.知识与技能: 理解算法的概念及特征;用自然语言、流程图等方法描述算法的过程; 2.过程与方法: 通过问题分析,选择适当的算法描述工具进行算法探究活动。 3、情感态度及价值观 激发学习热情,培养合作意识和进取精神,初步形成严谨的逻辑思维习惯。 四、教学重点:算法的特征以及经历用自然语言、流程图等方法描述算法的过程。 五、教学难点:算法的特征以及流程图描述算法。 六、教学方法:讲授法、演示法、任务驱动、情境教学

算法和算法的描述 教案

算法和算法的描述教案 课题:算法和算法的描述 一、复习:1.什么是算法? 算法就是解决问题的方法和步骤。(重要的事情说三遍) 2.程序的几种结构。 顺序结构,选择结构,循环结构。 (人生的结构何尝不是顺序着,选择着,循环着,唯独不一样的是程序只有一个确定的结果,但人生确是充满那么多不确定性) 3.用程序解决问题的步骤。 具体问题,分析问题,设计算法(核心),编写程序,调试运行,得到结果。 二、新课讲授 1.2.1算法的概念 请大家用2分钟时间读P8,用欧几里得的辗转相除法,求两个正整数的最大公约数。 与此同时在黑板上写出例题。 学生实践:设给定两个正整数M=112和N=64,利用辗转相除法,求他们的最大公约数。 算法如下: (1)112除以64,余数为________。 (2)________除以________余数为________。 (3)________除以________余数为________。 答:112和64的最大公约数为________。 学生实践:利用辗转相除法,求112和64的最小公倍数。(旨在提醒学生认真看书,带书) 算法的概念:P8 1.2.2算法的描述 教师直接给出算法的三种主要描述方式。 1.自然语言描述算法 2.流程图描述算法

3.伪代码描述算法 请同学回答,上面的辗转相除法求两个数的最大公约数是用了哪一种描述方式。教师讲解:通过欧几里得的辗转相除法的自然语言描述,能转化为流程图描述么?答:能 教师讲解表1-4 流程图的基本图形及其功能 注:学生在数学上算法作为一个章节,已经学习过,在此作为知识提醒和巩固。教师活动:通过画流程图,描述欧几里得的辗转相除法。 在此教师要边画边说。 提问:你如果是程序员,你喜欢自然语言的算法描述,还是流程图的算法描述?最后写出伪代码描述欧几里得算法。 INPUT m,n r= m mod n DO WHILE R><0 m=n n=r r=m mod n LOOP PRINT n 通过三种算法的描述,完成 了解了算法及其描述,结合“辗转相除法”实例,引出算法的五个方面的重要特征: 1,输入 一个算法有零个或多个输入,以刻画运算对象的初始情况。 所谓零个输入,是指算法本身给出了初始条件,一些程序,如杀毒软件就不需要输入,且输入不仅仅是指键盘输入,鼠标,摄像头都可以作为输入。 2.确定性

算法和算法的描述教案

算法和算法的描述 一、案例背景信息: (一)模块:高中信息技术选修1-《算法与程序设计》 (二)年级:高中一年级 (三)所用教材版本:广东教育出版社 (四)学时数:1 二、教学设计: (一)教学目标 1.充分理解掌握算法的概念及其特点 2.学会用自然语言来准确地描述算法 3.认知流程图的六种基本符号,用流程图描述简单的算法 4.理解科学合理的选择和设计算法 5.通过问题的解决,培养学生观察流程图问题、分析问题和解决问题的能力 (二)内容分析 教学重点: 1. 充分理解掌握算法的概念及其特点 2. 学会用自然语言和流程图来准确地描述算法 教学难点: 学会用自然语言和流程图来准确地描述算法 (三)学生分析 通过前面的学习,学生已经了解到可以用计算机来解决一些较复杂的问题,但具体应该“怎么做”即分析具体问题进行算法设计,仍然会让学生觉得抽象,枯燥,无从下手,因此本节课教师应注意引导学生的兴趣,设计好教学内容,提高学生对以后编程学习的兴趣。(四)教学策略设计 1.教学方法设计 本节课以趣味智力游戏“狼菜羊过河”来激发学生探索解决问题的兴趣,进而总结出算法的概念及特点,在具体案例的分析过程中轻松学会用自然语言和流程图来准确地描述算法,所有内容都以学生独立思考和分组讨论的方式进行,充分调动学生的主观能动性。2.学生上机操作安排和教师应用信息技术的情况 (1)学生以小组为单位,通过玩“狼菜羊过河”的小游戏,记下过河的方案,理解算法的概念;用自然语言描述求解:sum=1+2+3+4+5问题的算法;用流程图表示:计算工人日工资问题;每位同学都启动Visual Basic程序设计环境,输入程序代码,并调试运行。最后通过对比、思考理解科学合理的选择和设计算法的重要性。 (2)计算机教室,投影,网络,PPT导学课件,“狼菜羊过河”的FLASH游戏,求和.frm 三、教与学的实际过程描述 教学阶段及所用时间教师活动学生活动对学生学习过程的观 察和考查 信息技术 的应用 (一)创设情景,激发兴趣1.提出“狼菜羊过河”的 游戏规则 2.演示“狼菜羊过河”的 FLASH游戏 3.点评部分学生的过河方 以小组为单位,玩 一玩“狼菜羊过 河”的小游戏,并 记下过河的方案, 比比看哪一组最 创设问题情景,激发 学生兴趣,观察学生过 河方案的设计是否合 理正确,了解学生对算 法及其特征的理解情 PPT BBS “狼菜羊 过河”的 FLASH游戏

算法与程序 教案

第二课算法与程序 一、教材分析 (一)内容分析 算法的描述方法相对灵活,常用的描述算法的方法有自然语言、流程图和伪代码三种,对于小学生来说,会用前两种方法来描述算法即可。程序是算法在计算机上运行时的具体实现,它是指令的集合,需要利用某种具体的计算机语言来编写。本课主要让学生理解算法与程序的关系,并通过一个实例来体验Scratch程序的特点。 (二)教学目标 ①通过一个算法的具体设计过程理解算法的自然语言和流程图描述方法,并通过对比体验到两种方法各自的特点,培养学生使用条理化的算法描述自己解决问题过程的习惯。 ②通过体验一个Scratch程序使学生认识到程序的实质以及程序与算法的区别,消除对程序的神秘感,为以后进一步的程序设计学习打下良好的基础。 (三)教学重点和难点 (1)教学重点 ①算法的自然语言描述法及流程图描述法。 ②Scratch程序的特点。 (2)教学难点 程序的概念。

二、教学建议 (一)课前准备 教师准备好教材资源“课堂练习”中的“大鱼吃小鱼,sb2”。 重要说明:教材资源中所有的Scratch程序均有两个版本,其中扩展名为“sb”的程序适用于Seratch4,扩展名为“sb2”的程序适用于Scratch.2.0,教师与学生在使用时可自行选择合适的文件。 (二)过程设计 (1)新课导入(任务驱动) 完成活动一,分别用自然语言和流程图两种方式描述一个行程预案。参考方案: 自然语言描述: 如果不下雨,则 ①7:10在中学校门口集合完毕; ②7:20参加升旗仪式; ③7:50到报告厅听数学课(8:00-8:40); ④8:50到学校餐厅参观(30分钟); ⑤带队步行返回小学。 否则 ①15:30在中学校门口集合完毕; ②15:40到学校餐厅参观(30分钟); ③16:20到报告厅听特色校本课(16:30-17:10); ④17:20参加课外活动(17:20-18:00);

新教科版高中信息技术选修一:第一章 算法与算法的描述 知识要点复习

算法与程序设计选修模块知识要点 第一章算法与算法的描述 1.算法的定义 算法:就是解决问题的思想方法,对解题过程的精确描述。 计算机解决问题的步骤为分析问题、设计算法、编写程序、调试程序。 2.算法的特征 1、有穷性:一个算法必须保证执行有限步之后结束; 2、确定性:算法的每一步骤必须有确切的定义; 3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件; 4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的; 5、可行性:算法中执行的任何计算步都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成;(也称之为有效性) 3.算法的描述方法 算法的描述:可分多种表达方法,一般用自然语言、流程图和伪代码进行描述。 (1)自然语言描述法:指用人们日常生活中使用的语言(本国语言),用自然语言描述符合我们的习惯,且容易理解。 例1:求圆的周长和面积 算法如下:(自然语言描述法) (1)输入半径r ; (2) 计算周长c=2*π*r ; (3) 计算面积s=π*r*r ; (4) 输出周长c,输出面积s ; (5) 结束 (2)流程图描述:也称程序框图,它是算法的一种图形化表示方法。且描述算法形象、直观,更易理解。 例2:求圆的周长和面积 (3)伪代码描述法:是介于自然语言和计算机程序语言之间的一种算法描述。是专业软件开发人员常用方法。流程图的基本图形及功能: 例3:求圆的周长和面积 input r

c=2*pi*r s=pi*r*r print c,s 4.程序与程序语言 (1)程序的定义:程序实际上是一组机器的操作的指令或语句的序列,是算法的一种实现。 (2)程序的基本结构:顺序结构、选择结构、循环结构。 (3)程序设计语言的的产生和发展 1、机器语言:最早的程序设计语言,二进制代码指令,01代码序列,与机器硬件紧密相关,难于记忆和使用,仅有少数人能够掌握,但是能被机器直接识别。 2、汇编语言:为便于记忆和使用,发明了类似英语缩略词且带有助记性符号的语言,每条汇编指令和一条机器指令相对应,只是指令码和操作数都采用符号形式。而这种语言是不能被机器直接接受,必须用一种语言翻译器将程序中的每条语句翻译成机器语言才能执行。例如:MOV AH 2 3、高级语言:高级语言本身不是一种语言,只是一类语言的分类。用高级语言编写的程序必须经过翻译器将其翻译成机器语言,才能在计算机上执行。更便于推广和使用, 常见的高级语言:C语言、C++、pascal、java、C#、VB、Basic 5、程序的编辑和翻译 1、程序的编辑:以汇编语言或者高级语言所编写的程序被称为“源代码”,这些代码需要我们逐一的输入到计算机中。并把他们以文件的形式保存起来,这个过程称为程序的编辑 2、程序的翻译:前面的学习中使我们知道,计算机只能识别和执行二进制的机器语言代码,而我们用级语言或汇编语言编写的程序要想被计算机执行,必须翻译成机器语言程序,最终才能被计算机执行。高级语言的翻译程序一般则有两种类型:编译程序和解释程序。

相关主题
文本预览
相关文档 最新文档