资源简介 教学设计【学习目标】1.知识目标了解算法的概念和发展历史2.技能目标学会分析问题,提取问题形成算法描述,掌握流程图的概念与制作方法3.情感、态度与价值观目标算法是解决问题的重要手段,通过对问题的研究和分析,设计算法对问题进行求解,提高分析问题和解决问题的能力,体会算法分析的魅力【学情分析】八年级学生对于计算机有浓厚的学习兴趣,算法、流程图等对于他们却较为抽象,学生接受起来有一定的难度。在教学中,教师应从实例入手,让学生理解,让学生了解算法的自然语言描述,进而了解算法的流程图表示及了解计算机语言。【教材分析】算法是解决问题的重要手段,通过本课的学习,让学生掌握算法的概念、特征及其表示方式,提高学生分析和解决问题的能力,体会算法分析的魅力。【学习策略】本课内容较为抽象,主要通过“任务驱动”教学法,在学生自主探究的基础上结合小组协作,讲练结合来突破重难点。【教学过程】(1)创设情境,激发兴趣1.考考你的智力一位农夫要带一只狼,一只羊和一颗白菜过河,如果没有农夫看管,狼就要吃羊,羊要吃菜,但船很小,只够农夫带一样东西过河。问农夫该如何解决此难题?2.学生回答引导学生思考并用自然语言描述解决方法。(2)启发探究学习新知1.由牧羊人过河引出算法的概念,请学生举出生活中运用算法的例子,重点理解什么是算法。2.算法是解决问题的方法和步骤。要解决某个问题,首先对问题进行观察、分析、细化,收集必要的信息,然后根据已有的知识、经验进行判断推理,尝试按照一定的方法和步骤去解决问题。解决问题的过程就是实现算法的过程。思考:算法有哪些特征?有穷性:算法中的运算次数是有限的明确性:算法中每一步必须有清楚的定义,不能有二义性或模棱两可的解释。可行性:每一个操作都是可行的,都能得到正确的结果。可以没有输入量必须有输出。回顾练习,知识巩固3.算法的表示形式?自然语言?流程图?计算机语言计算机无法识别自然语言和流程图描述的算法,只有通过计算机语言将算法编成程序。程序:一系列计算机指令的有序集合计算机语言BasicPascal,C,C++,VisualBasic,Java设计一个算法,对任意输入的3个整数x,y,z,找出并输出其中的最大值max计算机语言DimxasIntegerDimyasIntegerDimzasIntegerIfx>ythenmax=zelsemax=yIfz>maxthenmax=zText4.text=Str(max)(三)巩固知识应用提高回顾练习,知识巩固学生完成课件上的巩固练习,教师巡回并个别指导,最后统一讲解。(四)知识梳理总结归纳通过本课的学习,你有什么收获?学生总结,算法的概念,算法的特征,算法的表示形式,包括自然语言、流程图和计算机语言。(五)作业布置请完成课本第5页的练习,写出西红柿炒蛋的算法【板书设计】算法基础知识算法的概念算法的特征算法的表示形式1.习题:用自然语言和流程图分别描述判断一个数是否为正数的算法。说明:即输入一个数a,判断它是否为正数,并输出yes或no。2.下列叙述正确的是()A采用自然语言描述算法最为直观形象B可以用流程图来表示一个解决一个问题的算法实现C算法只能用编程代码的方式来实现D采用流程图描述算法更为通俗易懂,但容易产生二义性3.下列问题不能用算法描述的是()A已知a、b、c的值,求一元二次方程ax2+bx+c=0(a≠0)的实数根B计算某个班级语文成绩的平均分C列出方程y=2x+1的所有实数解D根据圆的半径求圆的面积和周长4.“剥花生”问题的算法描述如下:①检查袋中是否还有花生;②若有,将花生剥壳,将花生放入碗中,将壳放入垃圾桶并返回①;③若无,则算法结束;则,该算法的表示形式为()A流程图B自然语言C计算机语言D代码5.求两个数x、y中的较小数的算法有如下步骤,其正确顺序为()①用公式计算较小数min=(x+y-|x-y|)/2②输入两个数x、y③结束④输出变量minA、①②③④B、②①④③C、④②③①D、①④②③6.某算法的流程图如下,当输入a和b的值分别为3、6时,该算法的输出结果为()A、3B、6C、8D、9(共16张PPT)Thebasicknowledgeofalgorithm我是河01|考考你的智力农夫过河。一个农夫带着一只狼,一只羊和一些菜过河。河边只有一条船,由于船太小,只能装下农夫和他的一样东西。在无人看管的情况下,狼要吃羊,羊要吃菜,请问农夫如何才能使三样东西平安过河。请写出解决这个问题的步骤。01|牧羊人过河问题1、农夫带羊过河2、农夫回来3、农夫带狼过河4、农夫带羊回来5、农夫带菜过河6、农夫回来7、农夫带羊过河1、农夫带羊过河2、农夫回来3、农夫带菜过河4、农夫带羊回来5、农夫带狼过河6、农夫回来7、农夫带羊过河算法02|什么是算法算法:解决问题的方法和步骤乐谱广播体操图谱武功秘籍导航图03|算法的特征1、有穷性2、明确性3、可行性4、有0个以上输入5、有1个以上输出1、不能用算法描述“输出所有的偶数”,是因为不符合算法特征中的()A、有穷性B、明确性C、有输出D、可行性2、下列关于算法的描述,错误的是()A、算法可以说是解决问题的方法和步骤B、算法是解决问题的精确描述C、算法的特征有:有限个步骤完成、明确性、可行性D、处理某个问题的算法往往具有唯一性04|回顾练习AD05|算法的表示形式①自然语言②流程图③计算机语言计算机无法识别自然语言和流程图描述的算法,只有通过计算机语言将算法编成程序。程序:一系列计算机指令的有序集合。计算机语言:BasicPascalCC++VisualBasicJava05|算法的表示形式例:设计一个算法,对任意输入的3个整数x、y、z,找出并输出其中的最大值max。1、输入变量x、y、z的值2、比较x和y,如果x>y,则将x的值赋给max;否则,将y的值赋给max3、比较z和max,如果z>max,则将z的值赋给max4、输出结果max自然语言开始输入变量x、y、z的值x>y?max←xmax←yz>max?max←z输出变量max的值结束YNNY开始、结束框输入、输出框判断框处理框连接框流程线流程图05|算法的表示形式DimxAsIntegerDimyAsIntegerDimzAsIntegerDimmaxAsIntegerx=Val(Text1.Text)y=Val(Text2.Text)z=Val(Text3.Text)max=0Ifx>yThenmax=xElsemax=yIfz>maxThenmax=zText4.text=Str(max)计算机语言06|回顾练习习题:用自然语言和流程图分别描述判断一个数是否为正数的算法。说明:即输入一个数a,判断它是否为正数,并输出yes或no。06|回顾练习1、输入变量a的值2、判断a是否大于0,如果a>0,则输出yes;否则,输出no开始输入变量a的值a>0?输出yes结束YN自然语言输出no流程图06|回顾练习1、下列叙述正确的是()A、采用自然语言描述算法最为直观形象B、可以用流程图来表示一个解决一个问题的算法实现C、算法只能用编程代码的方式来实现D、采用流程图描述算法更为通俗易懂,但容易产生二义性2、下列问题不能用算法描述的是()A、已知a、b、c的值,求一元二次方程ax2+bx+c=0(a≠0)的实数根B、计算某个班级语文成绩的平均分C、列出方程y=2x+1的所有实数解D、根据圆的半径求圆的面积和周长BC06|回顾练习3、“剥花生”问题的算法描述如下:①检查袋中是否还有花生;②若有,将花生剥壳,将花生放入碗中,将壳放入垃圾桶并返回①;③若无,则算法结束;则,该算法的表示形式为()A、流程图B、自然语言C、计算机语言D、代码4、求两个数x、y中的较小数的算法有如下步骤,其正确顺序为()①用公式计算较小数min=(x+y-|x-y|)/2②输入两个数x、y③结束④输出变量minA、①②③④B、②①④③C、④②③①D、①④②③BB06|回顾练习5、某算法的流程图如下,当输入a和b的值分别为3、6时,该算法的输出结果为()A、3B、6C、8D、9开始输入a、b的值c←a+5c≥b?输出c结束输出bYNC本课小结算法的概念算法的描述算法的流程图表示谢谢大家 展开更多...... 收起↑ 资源列表 算法基础知识.doc 算法基础知识.ppt 算法基础知识测试.doc