资源简介 (共17张PPT)第二章算法与问题解决AlgorithmandproblemsolvingAlgorithmandproblemsolving内容总览Thisisasubtitleforyourpresentation目录CONTENTS2.1算法的概念及描述2.2算法的控制结构2.3用算法解决问题的过程Algorithmandproblemsolving算法定义“今有稚兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?”——《孙子算经》鸡兔同笼问题Thisisasubtitleforyourpresentation算法广义计算机科学中算法定义解决问题的具体步骤。用计算机解决问题的步骤。打印输出所有的偶数100/正整数计算a@b的值有穷性:一个算法的处理步骤必须是是有限的。确定性:算法中对于每个步骤的执行描述必须是明确的。可行性:每个步骤都是可以做到并能在有限时间内完成。Algorithmandproblemsolving算法特征Algorithmandproblemsolving算法特征有0个或多个输入:初始数据可以从外界输入,也可以包含在算法之中。有1个或多个输出:算法必须包含至少一个输出(没有输出的算法是没有意义的)Algorithmandproblemsolving算法要素数据运算控制转移算法要素Algorithmandproblemsolving算法描述自然语言算法的描述方式流程图伪代码计算机语言Algorithmandproblemsolving算法描述自然语言就是人们日常使用的语言,可以是汉语、英语或数学语言等。自然语言优点:通俗易懂,容易理解。缺点:冗长,容易出现“歧义性”。有两个瓶子A和B,A瓶装有雪碧,B瓶装有可乐,问如何把雪碧和可乐互换。即A瓶原来装雪碧,现改为装可乐,B瓶原来装可乐,现改为装雪碧。1准备好一个空瓶子C2把A瓶里的雪碧倒入C瓶中3把B瓶里的可乐倒入A瓶中4把C瓶里的雪碧倒入B瓶中Algorithmandproblemsolving算法描述表示算法中数据的处理运算。处理框表示算法中数据的输入和输出。输入/输出框表示算法中的条件判断。判断框连接因页面写不下而断开的流程线。连接点有向线段,控制流程方向。流程线表示本段算法的开始或结束。开始/结束框Algorithmandproblemsolving算法描述处理框输入/输出框判断框连接点流程线开始/结束符Algorithmandproblemsolving算法描述开始C←AA←BB←C输出A、B的值结束把A瓶里的雪碧倒入C瓶中把B瓶里的可乐倒入A瓶中把C瓶里的雪碧倒入B瓶中图框内的符号“←”是赋值号,表示将赋值号右边的结果值存入左边的变量。顺序结构Algorithmandproblemsolving算法描述Algorithmandproblemsolving算法描述流程图直观易懂但分支增多会影响理解,并且自然语言和流程图转换为计算机能理解的程序中间需要较多的语义解释和格式转换工作。伪代码伪代码语法接近计算机程序设计语言,算法紧凑简练。Algorithmandproblemsolving算法描述流程图直观易懂但分支增多会影响理解,并且自然语言和流程图转换为计算机能理解的程序中间需要较多的语义解释和格式转换工作。伪代码伪代码语法接近计算机程序设计语言,算法紧凑简练。课堂小结Thisisasubtitleforyourpresentation算法的概念算法的特征算法的要素算法的描述求矩形面积s的部分流程图如下图所示,矩形的长、宽分别用变量b表示,对于框①和框②的作用,下列说法正确的是(????)A.框①用于输入a和b的值,框②用于输出s的值B.框①用于输出a和b的值,框②用于输出s的值C.框①用于输入a和b的值,框②用于输入s的值D.框①用于输出a和b的值,框②用于输入s的值2.有流程图如下图所示,其功能是将键盘输入的数进行相加,当输入的数为0时输出它们的和,则图中虚线部分的内容是(?)??3.下面关于算法的描述,正确的是(????)A.一个算法只能有一个输入B.算法只能用框图来表示C.一个算法的执行步骤可以是无限的D.一个完整的算法,不管用什么方法来表示,都至少有一个输出结果?4.下列问题不能用算法描述的是( )A.输入圆的半径,求圆的面积B.输入十位同学的身高,求他们的平均身高C.输入三个数,求这三个数的最大数D.输出所有3的倍数5.某一算法描述如下:①输入两个数x、y;②将x的值赋给t,将y的值赋给x,将t的值赋给y;③输出变量x、y的值④结束。该算法采用的描述方法属于( )A.流程图B.自然语言C.伪代码D.计算机语言6.(开放题)思考高楼的自动电梯在运行时需要考虑哪些方面(例如方便乘客,节约能源等),请为自动电梯设计一个适宜的算法。参考答案:A应该是先输入再输出,所以框1是用来输入a和b的值,框2是用来输出的s的值D根据题意可以看出虚线部分的内容是要判断a是否为0,所以应该选择表示判断框的D选项。D本题考查的是算法的特征。A选项算法可以有0个或多个输入,错。B选项算法可以用自然语言、流程图、伪代码、计算机语言来表示。C选项中算法的步骤必须是有限的。故选D。D本题考查的是算法的特征。选项D中,所有3的倍数有无数多个,它违背了算法的有穷性特征,因此不能用算法描述。B本题考查算法的表示方法。6.自动电梯能实现自动升降,主要是它安装了微型电脑控制器。微型电脑控制器主要任务如下:A.要让乘客方便,尽可能减少等待。B.要节约能源,尽可能减少空开里程和往返次数。我们可以从上述两个方向思考,设计适宜的算法。一个参考算法如下:①乘客进入电梯房,按目标楼层键并关门启动运行;②控制器根据事先存储在电脑中的指标判断人员是否超载?若超载发出提示信息,下去若干人,返回第①步;若未超载,执行下一步;③关闭电梯门,根据目标楼层键判断上升或下降;④随时判断是否有人按下同方向的请求键。若是,则运行到该层停下,开门上下人,并按键启动;若没有新的请求,则到达既定目标层后,停止;⑤接受新的请求,转而执行①;否则,停止。 2.1算法的概念及描述教学内容分析:1.从生活实例出发,概述算法的概念与特征,运用恰当的描述方法和控制结构表示简单算法。学情分析:本课的授课对象为必修一《数据与计算》的学生,从知识储备角度来看学生已经具有一定的获取和分析信息的能力,对算法在生产生活中的应用有一些朴素的认知,但尚未上升到理论高度;能初步使用自然语言表述算法,但是尚未接触过流程图和伪代码等其他描述算法的方法;从技能基础来看大部分学生掌握了简单的数字化学习工具的使用,比如文本编辑工具和画图工具等,但也不能排除有个别学生这方面的基础非常薄弱,从而可能影响到学生在活动中对数字化工具的选择。教学重难点:教学重点●理解算法的特征和描述方法,三种算法控制结构的特征和描述方法。教学难点●理解算法的描述方法,循环结构的特征和描述方法。教学目标:●能从生活和学习中发现实际问题中的算法,并结合实际问题理解算法的内涵和外延。●通过对生活实例的分析和描述,体会概要方法和算法的区别,通过正反例对比分析,理解算法的特征和三要素。●能初步用自然语言和流程图描述简单算法,了解算法描述的常见方式和各自特点。●理解三种算法控制结构的概念、特点及使用情形。●能根据问题求解过程中数据和运算的特点,选择合适的控制结构来正确地设计、描述算法。●理解各种控制结构在解决问题过程中综合应用的必要性。指向的核心素养:信息意识:能够根据解决问题的需要,自觉、主动地寻求恰当的方式获取与处理信息;在合作解决问题的过程中,愿意与团队成员共享信息,实现信息的更大价值。计算思维:针对给定的任务进行需求分析,明确需要解决的关键问题;能提取问题的基本特征,进行抽象处理,并用形式化的方法表述问题。数字化学习与创新:掌握数字化学习系统,学习资源与学习工具的操作技能,用于开展自主学习、协同工作、知识分享与创新创造。信息社会责任:具有一定的信息安全意识与能力,能够遵守信息法律法规,信守信息社会的道德与伦理准则;对信息技术创新所产生的新观念和新事物,具有积极学习的态度、理性判断和负责行动的能力。学业质量水平要求1-2依据解决问题的需要设计算法,采用流程图的方式描述算法。2-2依据问题解决的需要设计算法,运用算法描述方法和三种控制结构合理表示算法。核心素养落实核心素养的培养不可能泛泛而谈,应落实在每一次引导、每一个活动之中。从本质上说,算法是信息系统的灵魂。任何信息系统的自动运行都是计算机程序控制的结果,而计算机程序只是算法的一种描述方式。因此,深刻理解算法的概念与特征,正确描述解决问题的算法,已经成为学生养成计算思维过程中一个重要的内容和环节。本条目通过设置真实情境,引导学生发现生活中可用计算机解决的问题,能主动根据问题模型确定合适的算法,并对算法进行正确性评估;通过组织学生进行小组讨论与合作学习,培养学生互帮互助,共享信息的意识。帮助学生在熟悉的情境中理解算法的概念、特征、要素等基本知识,培养学生运用形式化方法描述问题,分析界定问题、对问题抽象建模,再选择合适的控制结构设计描述算法。引导学生体验从项目到问题再到算法的思维历程,提炼项目实施的步骤与方法,提升学生的计算思维。通过创设数字化学习环境,鼓励学生根据实际解决问题的需要,使用思维导图和PPT等数字化工具开展自主学习和协同工作,并能在解决问题的过程中提出新的算法思想,提升数字化学习与创新素养。引导学生从信息安全、信息伦理等角度负责任地设计算法;通过列举网上购票,智能空调和智能大棚控制等新兴事物,引导学生思考新技术所带来的便利和新问题,以积极的态度去面对,并做出理性判断,从而培养学生的信息社会责任意识。课时:1课时教学环节教学过程设计意图情景导入(5’)问题导入1:在多媒体课件上展示“鸡兔同笼”问题,请学生给出算术解(非方程解)。通过让学生完成简单任务,自然进入课堂,让学生体验算法,对算法有初步感性认识。知识讲解(10’).教师举一些不符合算法特征的例子,请学生分析其是否符合算法特征,若不符合,该如何改正:例1:写出所有的偶数(不符合“有穷性”特征,可以改为写出10亿以内的所有偶数);例2:找出班级里英语成绩最好的人(不符合“确定性”特征,可以改为找出班里本次英语测试成绩最高的人);例3:为什么算法必须要有“输出”,但有时却可以没有“输入”?(算法必须包含至少一个输出,以告诉外界问题求解的结果。如果问题求解时所有数据都是不变且已知的,则所需数据包含在算法中,不必再在执行时输入数据,否则需要包含一个或多个输入)学生对算法有了初步感性认识,趁热打铁,让学生根据教材内容归纳总结算法的内涵和外延,从而实现知识的内化。教师不是直接向学生讲解算法的特征,而是通过对实际案例的对比分析,引导学生自主阅读教材内容,加深对算法特征的理解,从而实现知识的内化。知识讲解(4’)教师讲授算法的要素:数据;运算;控制转移。帮助学生通过分析实例来理解算法的三要素,而不是机械地记住抽象枯燥的概念;引导学生思考要抓住哪些要素才能准确地描述算法。案例分析+自主讨论(10’)先让学生自主学习教材中“用自然语言描述算法”,然后要求学生小组合作讨论,分别使用自然语言和流程图描述有“两个瓶子A和B,A瓶装有雪碧,B瓶装有可乐,问如何把雪碧和可乐互换。即A瓶原来装雪碧,现改为装可乐,B瓶原来装可乐,现改为装雪碧”的算法。先让学生用自然语言表述算法,然后分析自然语言的缺陷,再请学生用流程图表达,体会二者的区别。由于学生是第一次接触流程图,初次尝试难免会出现各种错误。教师要对这些错误有预期心理准备,并通过小组讨论和及时评价等形式去引导学生逐渐掌握正确的描述方法。知识讲解(4’)教师结合问题讲解例题,并总结用自然语言描述算法和用流程图描述算法的区别。并讲授除了上面两种方法之外,我们还可以通过伪代码和计算机语言来描述算法。帮助学生通过分析实例来理解算法的描述方式,而不是机械地记住抽象枯燥的概念;引导学生思考要抓住哪些要素才能准确地描述算法。课堂小结(2’)复习巩固本节课所讲的知识点。算法的概念算法的特征算法的要素算法的表示方法将本节课的重点内容串连到一起,便于学生复习理解。板书设计:1.1数据、信息、知识与智慧算法的概念算法的特征有穷性、可行性、确定性、0个或多个输入、一个或多个输出算法的要素算法的表示方法自然语言、流程图、伪代码、计算机语言 展开更多...... 收起↑ 资源列表 2.1算法的概念及描述.pptx 2.1算法的概念及描述习题.docx 2.1算法的概念及描述教案.docx