第一篇:算法的概念说课稿
1.1.1 算法的概念说课稿
阳泉十一中
崔建华
我说课的题目是《算法的概念》,下面我从教材分析、学情分析、目标分析、教法学法、教学过程、教学反思谈谈我对这节课的设想。一.教材分析
本节内容选自高中数学人教A版《必修3》第一章第一节《算法与程序框图》,本节是第一课时---《算法的概念》。
算法在高中数学课程中是新内容,算法的思想方法几乎贯穿整个高中数学课程的所有章节,如解三角形、数学归纳法、数学建模等.算法概念的引入有助于理解算法的思想,为后面的学习奠定基础。
二、学情分析
学生在初中接触过算法,例如本节课出现的二元一次方程组的解法,但没有明确的算法的概念。本班学生为一个普通大班,需要提高总结归纳能力。
三、目标分析
本节课通过对具体问题的解决过程与步骤的分析,让学生体会算法的思想,了解算法的含义.具体目标为:
1. 要求学生了解算法的含义,体会算法的思想.2. 在分析实例的基础上了解算法的基本特征.3. 能够用自然语言描述一些具体问题的算法.本节课教学重点通过实例让学生体会算法思想,会用自然语言表达一些具体问题的算法,难点是把自然语言转化为算法语言.
四、教法学法
教法上采用情境式教学、问题式教学、探究式教学、体现教师的 启发引导与评价。学生通过观察类比、自主探究 合作交流、练习总结等方法学习。
五、教学过程
本节课教学,先介绍元代数学家朱世杰的《四元玉鉴》,引出介绍我国古代部分数学成就,对学生渗透爱国主义教育.接着围绕算法概念,立足于用自然语言描述解决问题过程中的明确顺序.根据这节课的教学内容、教学目标,采用以教师引导分析帮助学生建立算法概念,着重一个“导”字,并通过适量的练习加以巩固.通过例题设计算法,帮助学生学会用自然语言描述算法.重点是通过设计帮助学生领会算法概念,而不在于算法所涉及问题的本身.教学时可以先让学生回顾问题的解题过程,再让他们整理出步骤,并有条理的用自然语言表达出来.通过这样的教学使学生体会算法设计的基本思路.六、教学反思
本节课是概念课,而概念的形成需要“延迟”,需要先给学生思维活动的机会,让学生充分感知概念的内涵,从而使概念形成水到渠成.算法概念没有统一的定义,因此,需要创设条件,使学生从概念的特征方面去真正理解概念.由此出发,教学过程设计的“问题链”要围绕上述要求进行,使“问题链”能产生学生有效的思维活动,能一环一环相扣,引导学生理解算法概念.算法教学应紧扣教材,研究的问题以数学问题为主,避免将算法概念泛化。
第二篇:算法的概念(教案)
算法的概念(教案)
数学与统计学学院 2009211955 安琪 0905班
一、本节内容分析
算法的概念这一节在高中数学必修三人教A版第一章第一节1.1.1。“算法”这个概念对于学生而言可能是陌生的,但在人教A版数学必修一、二课后补充和提高中都有提到,所以教师在讲授过程中应注意和前面的知识或应用联系。
算法是数学及其应用的重要组成部分,是计算科学的重要基础。随着现代信息技术飞速发展,算法在科学技术、社会发展中发挥着越来越大的作用,并日益融入社会生活的许多方面,算法思想已经成为现代人应具备的一种数学素养。需要特别指出的是,中国古代数学中蕴涵了丰富的算法思想。
二、学习目标
知识与技能
1、体会算法思想;
2、了解算法的含义;
3、理解算法的性质; 过程与方法
1、通过算分概念和例题分析,能够独立使用算法语言描述解决具体问题的算法;
2、通过例题分析和比较步骤,能够发现具体问题的过程或步骤中的相同点,总结出算法的性质;
3、通过实例自我感悟,理解算法在现实生活中的作用。情感,态度与价值观
1、意识到思维的明辨性,思维的逻辑正确性和严谨性;
2、正确看待数学中一类问题的解法,学会将问题归类。
三、学习者分析
“算法”对于高中生是一个陌生又熟悉的概念,在必修一用二分法求解方程课后阅读中,算法的程序框图稍有介绍。学生思维灵活,同时善用巧法,但是也容易
通过常规常识从而自然地判断一些简单问题,对于算法这种判断显然不可取。
四、教学重点
本节内容要求教师引导学生理解算法的概念以及算法的性质,学生学会正确写出算法分析。
五、教学难点
突破常规想象解决数学问题,找到解决一类题的普遍做法,并将过程记录下来形成算法,为以后写程序做铺垫。
六、教学用具
多媒体PPT,高中数学人教A版必修三
七、课时安排
一个课时
八、教学过程
【兴趣引入】同学们好,从今天开始我们将步入数学必修三的学习。首先请同学们看看大屏幕上的三幅图,有哪位同学可以告诉我,这三幅图中的物品分别是什么?(PPT中播放三幅图片分别是图一算筹,图二算盘,图三计算机)
学生1:第一幅...不认识,第二幅是算盘,第三幅是计算机。
好,请坐。他对于后两幅图回答的很正确,第一幅图呢,同学们可能不是很认识,它是算筹。这三幅图所表示的内容都是数学计算工具。由于时代的久远,算筹已经被彻底摒弃,而算盘也只有极少数偏远地区在使用。计算机是当今社会使用最普遍的工具,那么究竟如何使用计算机解决数学问题呢?今天我们就一起学习计算机解决数学问题的基础内容——算法。
(板书)第一章算法的初步第一节算法与程序框图1.1.1算法的概念 【知新探索】同学们可以通过题目发现我们本章的一个新名词是什么? 学生齐答:算法
没错,那么算法的定义是什么?怎样写算法分析?算法的特征又是什么呢?现在我们就来逐一的解决这些问题。
在以前我们就学习过如何解决二元一次方程组,有哪位同学可以告诉我解决二元一次方程组的步骤呢?(PPT上显示一般二元一次方程组)
学生2:我们通常使用加减消元法和代入消元法解题 很好,那你就和大家说说用加减消元法解二元一次方程组的步骤吧。学生2:首先,我们将
y的系数化为相同,然后通过两个方程的加减消去y,再按照解一元一次方程的方法解出式子中解出
x,最后把求得的x代入原方程组中的一个y即可。
大家觉得对不对? 学生齐答:对
请坐。我们一起看看PPT上的步骤,和刚才同学说的一样。这其实就是解决一般二元一次方程组的算法。现在再请一位同学看着大屏幕为大家读一读算法的定义。
学生3:算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。
了解算法的定义以及结合二元一次方程组的算法分析,同学们可以看出算法实质就是将我们解题的步骤一一记录下来。那么,我们来看几道例题。(教师边诱导学生回答问题思考,边播放PPT)
【例一】任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判断。(PPT播放题目)
在写算法之前,同学们回顾一下什么是质数? 学生4:只能被1和自身整除大于1的整数是质数。
正确,那你可不可以判断一下7,13,101,667这些数是不是质数? 学生4:7是质数,13是质数,101好像是质数,667也好像是质数。那你是怎么判断的呢?
学生4:根据定义看除了1和本身之外有没有其他约数。
请坐。刚刚这位同学就是检验从2~(n-1)中有没有n的因数来判断一个数是不是质数,这也是我们通常判断质数的方法。但是,刚才他回答的问题中有两个数有些犹豫,不是很确定,那么我们通过计算可知101是质数,而667=2329,所以667不是质数。我们在判断667时就已经感到人工计算的复杂了,这时我们就借助计算机解决这类为题。
那么我们一起把刚刚这位同学的想法写下来。(板书)依次判断2~(n-1)中有无n的因数。若有这样的数,则n不是质数;若没有这样的数,则n是质数。
同学们现在看一看老师的算法分析有没有什么问题?这样写可以判断出任意的数是否为质数嘛?
同学5:这样判断,丢了一个质数2,要填上才行。
这位同学观察的很仔细,好,既然丢了一个2,那我们就补上。一起看大屏幕,这道题的算法经过同学们的补充完整就是这样。
【例二】写出求一列有限整数列中最大值的算法 同学们,我们通常如何选出一列数中的最大值呢?
学生6:先选两个数比较,选出最大的,然后用最大的和其他的数进行比较,要是最大的数还是最大,就继续比较,如果另外一个数大,就把另外一个作为最大数,进行和剩下的数比较,知道没有可以比较的。剩下的数就是最大数。
好,这位同学已经基本将算法分析说了出来,不知道其他同学有没有明白,现在我们一起看一下大屏幕。
不知道同学们还记不记得在数学必修一的函数二分法判断零点书后补充中有算法的内容,不记得也没关系,我们一起来看一看下面一题
【例三】用二分法设计一个求方程x2-2=0的近似根的算法.那同学们还记不记得二分法了呢?
学生7:对于在区间[a,b]上连续不断,且f(a)﹒f(b)< 0的函数y=f(x),通过不断把函数f(x)的零点所在的区间一分为二,使区间的两个端点逐步逼近零点,进而得到零点近似值的方法叫做二分法。
很好,请坐。那么大家现在想想这道题应该怎么写呢?第一步应该怎么做? 学生8:令f(x)=x2-2.因为f(1)<0,f(2)>0,所以设a=1,b=2.恩,满足f(a)﹒f(b)< 0,那么就要将区间一分为二,对吧?接下来呢? 学生8:令 mab,2 判断f(m)是否为0.若是,则m为所求;若否,则继续判断f(a)(m)大于0还是小于0 好,进行这一步的判断,我们是要选择哪一区间进行二分,然后呢? 学生8:若f(a)(m)>0,则令a=m;否则,令b=m.那计算机应该到什么位置停止呢?是不是应该给它一个终止的信号? 学生8:因为有一个近似值ε,所以判断|a-b|<ε是否成立?若是,则a或b为满足条件的近似根;若否,则返回第二步.不错,回答得很好。同学们为他鼓鼓掌。
刚才我们知道了算法的定义,又分析了几道例题,也初步掌握应该如何描述算法,在课前提的三个要解决的问题,还有一个就是算法的特征,只有知道了算法的特征,我们才能检验自己写的究竟是不是算法分析。
首先,先回到算法的概念中,同学们看我用红笔表示出的步骤,第一个特征就是普适性,因为它要解决一类问题;第二点,请一位同学回答。
学生9:明确性和有效性 一下说出两点,请坐,第四点 学生10:有限性
同学们既然自己总结出了算法的特征,再结合刚才的例题讲解。现在我就要考考大家学以致用如何了。
【学以致用】(三道题让学生先思考在回答教师在学生回答后,若有特殊强调或错误时,加以纠正。)
1、任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积.2、给定三条线段,判定是否可以构成三角形
3、为了加强居民的节水意识,某市制订了以下生活用水收费标准:每户每月用水未超过7m3时,每立方米收费1.0元,并加收0.2元的城市污水处理费;超过7m3的部分,每立方米收费1.5元,并加收0.4元的城市污水处理费,请你写出某户居民每月应交纳的水费y(元)与用水量x(m3)之间的函数关系,然后设计一个求该函数值的算法.【小结明晰】在这堂课即将结束的时候,同学们情回顾一下,我们这堂课学习了什么?同学们一起说,首先......学生们齐答:算法的定义 恩,定义是什么?
学生齐答:算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。
然后呢?我们有学习了如何写算法,一步一步将我们做题思路写下。最后,我们一起讨论了算法的特质,同学们还记得吗? 学生齐答:记得,普适性,明确性,有效性和有限性。很好,为了让同学们更加加强本节课的基础,作业是 【加强巩固】作业:书后1.1.1练习2 下课。
第三篇:算法的概念的教学设计
算法的概念的教学设计
杭二中分校 陈海玲
一.内容和内容解析
算法是规则系统一种循序渐进解决问题的过程,尤指一种为在有限步骤内解决问题而建立的可重复应用的计算过程。(概念的内涵 广义)
在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限的步骤。现在,算法通常可以编成计算机程序,让计算机执行并解决问题。(概念的内涵 狭义)
算法概念这一节,立足于用自然语言描述解决问题过程中的明确顺序,是实现用程序框图、程序语言的表示方式的基础。(内容及在本章的地位)
算法的思想方法几乎贯穿整个高中数学课程的所有章节,如解三角形、数学归纳法、数学建模等.本节的内容能为以后学习本章程序框图、基本算法语句以及选修1-2第四章“框图”内容奠定基础.由于程序框图体现的是算法的思想,故其思想方法可运用到数学的各个领域之中.(在学科中地位)
算法也是数学及其应用的重要组成部分,算法是连接人和计算机的纽带。是计算机科学的基础,利用计算机解决问题需要算法。首先研究解决问题的算法的自然语言表达,再把算法转化为程序,所以本节课学习用自然语言进行算法设计是使用计算机解决具体问题的一个极为重要的环节。(体现其应用性)
二.目标和目标解析
本节课通过对解决具体问题的过程与步骤的分析,让学生体会算法的思想,了解算法的含义。具体目标为:
1. 要求学生了解算法的含义,体会算法的思想。2. 在分析实例的基础上了解算法的基本特征。3. 能够用自然语言描述一些具体问题的算法。
本节课教学重点通过实例让学生体会算法思想,会用自然语言表达一些具体问题的算法.三.教学问题诊断
本节算法对学生来说并不陌生。生活中很多问题是按照指定的要求一步步解决的;小学的四则混合运算所遵循的先乘除、后加减的规则,括号的处理规则等,都是学生最初接触到的算法实例。初中学习的方程组的解法等,也是算法的典型体现。高中学习的必修1中求函数零点的二分法的解题步骤、必修5中线性规划的解题规律等更成了算法的经典问题。还有数列的求和、质数的判定、最大公约数和最小公倍数的求法等,都涉及到算法。同时,在其他学科、甚至生活中也离不开算法。
算法的实质是将人的思维过程处理成计算机能够一步一步执行的步骤,进而转化为一步一步执行的程序。这种处理问题的方式,学生以往有一些经验,如教师对某些题型总结的较为固定的解题步骤。不过这种经验并没有得到应有的升华。只有在完整地学习了算法后,学生才能把这些知识提升到新的高度来认识。算法是对解题方案的准确而完整的构造性的描述。算法并不是容易理解和掌握的内容。教学难点是对算法概念的理解和对算法的描述,尤其是对循环问题的递归语言表达,由于学生初次接触,更加难以掌握。
教师可以首先通过实际生活中的生动有趣的例子帮助学生了解算法的含义,明白算法是规则系统一种循序渐进解决问题的过程。在此基础上通过引导学生在具体情境之下回顾特殊的二元一次方程组的求解,自然展示求解的“步骤”,从而帮助学生进一步明白算法是在有限步骤内解决问题而建立的可重复应用的计算过程,并能够编成计算机可以执行的程序让计算机执行并解决问题的。
在建立了算法的概念以后,教师可以通过进一步介绍学生熟悉的例子,并尝试着让学生自己举算法的例子,帮助学生进一步领会算法的思想。
接着通过例1和例2设计算法,帮助学生学会用自然语言描述算法,质数的判断是学生小学就接触过的,用二分法求近似解在必修1中学生也已经学习过,因此这两个问题学生都是熟悉的。这里重点是通过设计理解算法概念,而不在于算法所涉及问题本身。教学时可以先让学生回顾问题的解题过程,再让他们整理出步骤,并有条理的用自然语言表达出来。通过这样的教学使学生体会算法设计的基本思路。
在例题之后,借助课本中的思考,得出算法的特征,并通过练习促进对算法概念的理解与掌握。通过案例的运用,引导学生体会算法的核心是一般意义上的解决问题策略的具体化。
本节课教学,要围绕算法概念,立足于用自然语言描述解决问题过程中的明确顺序。根据这节课的教学内容、教学目标,结合以上分析,本节课建议采用以教师引导分析讲授为主,着重一个“导”字,并通过适量的练习加以巩固。四.教学支持条件分析
为了有效实现教学目标,条件许可,可以借助计算机或者计算器来参与运算或表达算法。通过计算机演示帮助学生体会算法研究的价值。五.教学过程设计
(一)结合章头图对学生进行数学史教育,同时让学生认识算法研究的价值。1.看章头图,介绍图中在春秋时期盛行的算筹;明朝时期已广泛使用直至今日仍在发挥作用的算盘;当今时代已进入各个领域的计算机。
2.提出问题:是什么把这三这联系在一起?引出算法。
3.从古到今算法始终扮演着重要的时代角色。我国古代数学在世界数学史中曾一度占领先地位。通过介绍我国古代部分数学成就,加强对学生进行爱国主义教育,同时体会算法的研究价值。4.从为了了解计算机的工作原理,引出课题——算法的概念。
(二)问题情境,引出算法概念:
问题情境:一个农夫带着一条狼、一头山羊和一篮蔬菜要过河,但只有一条小船.乘船时,农夫只能带一样东西.当农夫在场的时候,这三样东西相安无事.一旦农夫不在,狼会吃羊,羊会吃菜.请设计一个方案,使农夫能安全地将这三样东西带过河.设计意图:通过这个学生容易感兴趣的问题,让学生有一个对算法的初步认识。
师生活动:教师可以在学生看后引导学生整理出按步骤解决问题的方案,并告诉学生这就是一个解决该问题的算法。
第一步,农夫带羊过河.第二步,农夫独自回来.第三步,农夫带狼过河.第四步,农夫带羊回来.第五步,农夫带蔬菜过河.第六步,农夫独自回来.第七步,农夫带羊过河.当然,也有可能学生提出第二套过河方案.第一步,农夫带羊过河.第二步, 农夫独自回来.第三步,农夫带蔬菜过河.第四步,农夫带羊回来.第五步,农夫带狼过河.第六步,农夫独自回来.第七步,农夫带羊过河.在这里目的不是为了解决这个问题本身,而是为了从这里让学生初步了解算法,所以不需要两种方案都讲.只要在学生回答的基础是整理出一个解决问题的步骤即可.(三)解决问题,建立算法概念 “鸡兔同笼”是我国隋朝时期的数学著作《孙子算经》中的一个有趣而具有深远影响的问题,从学生熟悉的鸡兔同笼问题解决引出数学中的算法问题:
问题1:一个笼子里有一些鸡和兔,现在知道里面一共有35个头,94只脚,问鸡和兔各有多少只?
设计意图:通过学生熟悉的问题的解决,帮助学生形成按步骤表达解决问题的想法。为下面学习复杂问题中用自然语言描述算法打好基础。
师生活动:这个问题学生容易解决,可以由学生独立思考,之后汇报其解决方案。
1.小学里解决方法:兔的只数,(94235)212
351223可以得到鸡的只数。在此基础上归纳出一般结论。
2.中学解决方法:设立未知数,建立方程,解方程。解:设有x只鸡,y只兔,则xy35(1)
2x4y94(2)(1)2(2)得:2y24(3),解(3)得y12
将y12代人(1)求得x23。
答:笼子里有鸡23只,兔12只。
3.从上述解决问题的过程看,解决以上问题可以分若干步完成: 第一步,设有x只鸡,y只兔,xy35(1)第二步,列方程:
2x4y94(2)第三步,解方程求得:x23,y12
第四步,答:笼子里有鸡23只,兔12只。
教师在学生回答的基础上指出上述四个步骤构成解决“鸡兔同笼”问题的一个算法。同时指出:第一步,设.第二步,列.第三步,解.第四步,答.这四个步骤构成了一般的列方程解应用题的算法。
问题2:你能写出求解二元一次方程组: xy352x4y94(1)(2)的步骤吗?
设计意图:在上述“鸡兔同笼”问题中涉及解具体二元一次方程组的问题,通过复习所学过的解二元一次方程组的基本步骤.自然过渡得到解一般的二元一次方程组的步骤,为建立算法概念打下基础。
师生活动:教师先提出问题,让学生对求解过程一步步表达出来。
解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,教师引导学生用加减消元法写出它的求解过程,然后让学生尝试用代入消元法表达出解决问题的步骤。
解:第一步:(1)2(2)得:2y24(3)第二步:解(3)得y12 第三步:将y12代人(1)求得x23。
无任学生用代入消元法还是加减消元法,在这里目的不是为了解方程的方法,而是为了从这里让学生初步了解算法,所以不需要两种方法都讲.教师只要和学生共同整理出一个解方程的步骤即可.教师在学生回答的基础上指出:
1.以上求解的步骤就是解二元一次方程组的算法.2.本题的算法也适合一般的二元一次方程组的解法.3.在解决某些问题时,需要设计出一系列可操作或可计算的步骤,通过实施这些步骤来解决问题,通常把这些步骤称为解决这些问题的算法.
a1xb1yc1问题2:写出求方程组a2xb2yc2(1)(2)a1b2a2b10的解的步骤
设计意图:在复习解具体二元一次方程组基本步骤的基础上.进一步分析解一般的二元一次方程组的步骤,并指出上述步骤构成了解二元一次方程组的一个算法,从而加深学生对算法的了解。通过教师事先编好的程序的演示,让学生感受算法研究的价值。
师生活动:教师在提出问题后,可以让学生来说出其解题步骤,教师用投影给出求解过程步骤。解:第一步:(2)×a1-(1)×a2,得:a1b2a2b1ya1c2a2c1(3)
第二步:解(3)得 ya1c2a2c1;
a1b2a2b1第三步:将ya1c2a2c1bcb1c2代入(1),得x21.a1b2a2b1a1b2a2b1在完成求解一般的二元一次方程组步骤的基础上教师指出:
1.本题的步骤就是求一般的二元一次方程组的解法的算法.2.在写出此步骤基础上,我们将上述步骤进一步用计算机能够识别的语言表达出来并输入计算机就可以解决用计算机求二元一次方程组的解了。这里老师事先按照上述步骤编写了程序,同学们可以跟老师一起来看看。
3.让学生输入数据,计算机直接给出方程组的解。
(四)分析归纳,得到算法概念
问题3:到底什么是算法?如何表达算法的含义?
设计意图:在提出算法这一概念后,学生自然想进一步了解到底什么是算法。教师在此处设问,目的不是要求学生直接作答,而是为了自然过渡到对算法的更进一步研究上。
用上面几个学生熟悉的问题来帮助学生建立算法的概念,降低难度,有利于学生正确理解算法的概念。
培养学生体会发现、抽象、总结的能力。
师生活动:教师在提出问题后,可以先让学生用自己的语言表达对算法思想的理解,在学生回答的基础上教师进行归纳帮助学生建立算法的概念。
教师指出:算法通常是指按照一定规则解决某一类问题的明确和有限的步骤。现在,算法通常可以编成计算机程序,让计算机执行并解决问题。
教师可以通过进一步从算法的角度介绍学生熟悉的例子,并尝试着让学生自己举算法的例子,帮助学生进一步领会算法的思想。
例1.写出交换两个大小相同的杯子中的液体(A水、B酒)的一个算法. 例2.写出求一元二次方程ax2bxc0(a0)根的算法.(五)算法的应用:
问题1设计一个算法,判断7是否为质数。
设计意图:在给出算法的概念后,教师在此处安排这样一个问题,目的强化化学生对算法思想的领会,使学生体会到算法并不抽象,实际上是我们从前解题步骤的总结。然后通过一连串问题的追问,由浅入深,由特殊到一般,培养学生体会发现、抽象、总结的能力。通过计算机演示,让学生感受算法研究的价值。
师生活动:教师引导学生回忆质数的概念,提出如下一系列问题帮助学生形成解决问题的基本步骤,也就自然完成了一个算法的设计。
1.什么是质数?
2.如何判断一个数是不是质数?
3.你在回答这个数是不是质数前,你在头脑中经历了怎样的思考、操作过程?
在学生回答这个问题的基础上,教师接着提出问题:
4.计算机如何判断整除呢?从而引导学生用规范的语言来表达算法.5.能否设计一个算法,判断35是不是质数?
6.判断7是否是质数的算法和判断35是否是质数的算法有什么不同?
6.任意给定一个大于1的整数n,能否设计一个算法对n是否为质数做出判断?
这时候学生知道要判断一个大于2的整数n是否为质数,只要根据质数的定义,用比这个整数小的数去除n,如果它只能被1和本身整除,而不能被其它整数整除,则这个数便是质数。
有了前面的基础,这里学生多数可能回答用2~(n-1)去除n,于是将判断的过程表达出来就形成了解决问题的这样一个算法: 第一步,给定大于2的整数n.第二步,用2去除n,得到余数t.若t=0,则2能够整除n, n 不是质数,算法结束;否则,进入第三步.第三步,用3去除n,得到余数t.若t=0,则3能够整除n, n 不是质数,算法结束;否则,进入第四步.„„
第(n-1)步,用(n-1)去除n,得到余数t.若t=0,则(n-1)能够整除n, n 不是质数,算法结束;否则, n是质数.教师首先应该肯定学生的做法,但在学生回答的基础上向学生提出这里
从2~(n-1)都在重复同一件事,象这种情况在设计算法时经常遇到,然后教会学生用递归语言进行表达.在完成上述算法表达的基础上教师指出:
1.用自然语言描述一个算法,最便捷的方式就是按解决问题的步骤进行描述,每一步做一件事情.这样描述的算法体现按部就班程序性的特点.对于在解决问题过程中反复进行的步骤,同学们要学习用递归语言进行描述.用递归语言进行描述时,通常分三个步骤:首先要给一个初始值,接着表达重复做的事情,最后要进行终止判断.2.教师用事先按照上述步骤编写的程序演示,判断学生说出的数是否为质数。
问题2.用二分法设计一个求方程x20的近似根的算法.设计意图:二分法是算法中的经典问题,具有明显的顺序和可操作的特点。因此在这里安排这样一个例题既可以巩固前面已形成的用自然语言描述的算法,也可以提高用自然语言描述的算法的表达水平。
2师生活动:教师引导学生回顾二分法求方程近似根的方法,回忆二分法的基本思想。教师提出精确度要求,然后引导学生说出解决该问题的每一个步骤,形成本例算法。
教师可以通过以下一连串问题的设问,引导学生完成二分法求方程近似解的算法设计。
1.二分法求方程近似解是通过求对应函数的近似零点得到的,所以首先要建立函数,而且要有具体精确度要求,因此第一步应该怎么做?
2.二分法分的是什么? 3.如何确定新区间的端点?
4.如何表达出反复二分区间的过程?(引导学生学习用递归语言表达)解:设所求近似根与精确解的差的绝对值不超过0.005,算法: 第一步,令fxx22.给定精确度d.第二步, 给定区间a,b,满足f(a)f(b)0.第三步,取中间点mab.2第四步,若f(a)f(m)0则含零点的区间为a,m;否则含零点的区间为m,b.将新得到的含零点的仍然记为a,b.第五步, 判断a,b的长度是否小于d或者f(m)是否等于0.若是,则m是方程的近似解;否则,返回第三步.
在得到算法后教师可以带领学生看书,阅读课本第4页上有关内容,并
说明按以上步骤,我们将依次得到课本第4页的表1-1和图1.1-1.于是,开区间(1.4140625,1.41796875)中的实数都满足假设条件的原方程是近似根.(五)小结:
将本节的主要内容以问题的形式呈现,让学生通过思考和回答问题,达到回顾和总结的目的. 问题1:你能举出更多算法的例子吗?
设计意图:为了学生掌握算法的思想,所以这里让学生充分结合具体问题,以举例的形式来表达算法,以此评价他们对算法特征的理解情况,并让他们联系已经学习过的内容学会用算法的思想方法去解决问题.
师生活动:教师应尽可能让更多的学生举出不同的实例,并引导他们认识到算法的几个特征. 问题2:与一般解决问题的过程相比,你认为算法最重要的特征是什么?
设计意图:通过让学生思考回答来评价他们对算法的特征中顺序、确定、有限的步骤的领会情况.同时提高学生的总结、归纳、表达能力。
师生活动:如果学生不能回答提出的问题,可让他们在本节课已有问题的基础上进行思考.并进行归纳总结.算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。
在数学上,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.与一般解决问题的步骤相比,算法具有程序性、有限性、构造性、精确性等特点。六.目标检测设计 1.课堂检测
课本第6页练习1 2.课后检测
第1题.一位商人有9枚银元,其中有1枚略轻的是假银元。你能设计用天平(不用砝码)将假银元找出来的算法吗?
设计意图:检查学生是否真正了解算法的思想。通过本题评价学生能否结合实际问题,用本节课所学的算法的思想用自然语言表达算法.
第一步,将9枚金币平均分成三组,将其中两组放在天平的两边.如果天平平衡, 则假的金币必定在另外一组;如果天平不平衡,则假的金币必定在较轻的一组.第二步,将有假金币的一组金币中,取出两枚金币,分别放在天平的两边.如果天平平衡,则假的金币必定是剩余的;如果天平不平衡,则假的金币必定在较轻的一边.第2题.任意给定一个大于1的正整数n,设计一个算法求出n的所有因数.设计意图:检查学生是否会用自然语言正确表达算法。通过本题评价学生是否真正掌握判断给定一个正整数是否是质数的方法,同时也训练学生的应变能力。解:算法步骤:
第一步,依次以2~(n-1)为除数去除n,检查余数是否为0.若是,则是n的因数;若不是,则不是n的因数.第二步,在n的因数中加入1和n.第三步,输出n的所有因数.第3题.写出解方程x2x30的两个不同的算法.设计意图:检查学生能否用自然语言正确表达算法。本题写两个不同的解决方案,让学生体会算法的不唯一性,而且通过比较知道今后在解决问题过程中合理地进行选择.体现研究算法的价值.分析:本题是求一元二次方程的解的问题,方法很多,下面分别用配方法、判别式法写出这个问题的两个算法.解:算法1:
第一步,移项,得:x2x3 ① 第二步,①式两边同加1并配方,得:x-14 ② 第三步,②式两边开方得: x12 ③ 第四步,解③得: x3或x1.算法2:
第一步,计算方程的判别式并判断其符号,243160.2222bb24ac第二步,将a1,b2,c3代入求根公式x.得:x3或x1.2a
第四篇:《1.1.1算法的概念》教案
1.1.1 算法的概念(第1课时)
【课程标准】通过对解决具体问题过程与步骤的分析(如二元一次方程
组求解等问题),体会算法的思想,了解算法的含义.【教学目标】1.理解算法的概念与特点;
2.学会用自然语言描述算法,体会算法思想; 3.培养学生逻辑思维能力与表达能力.【教学重点】算法概念以及用自然语言描述算法
【教学难点】用自然语言描述算法
【教学过程】
一、游戏引入
1.汉诺塔游戏;(详见课件演示)2.鸡兔同笼问题。
鸡兔同笼问题:鸡和兔共有若干只,数腿共有94条,数头共35只,请问各有鸡兔多少只?能不能说出解决这个问题的步骤(过程)!
二、新课探究
a1xb1yc1,1、对于一般的二元一次方程组a2xb2yc2,其中a1b2a2b10,能否找到一个程序化的求解步骤:
2、算法的概念
通过对以上几个问题的分析,我们对算法有了一个初步的了解.在解决某些问题时,需要设计出一系列可操作或可计算的步骤,通过实施这些步骤来解决问题,通常把这些在数学中叫做算法。现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.三、知识应用
1.说说你在家里烧开水过程的一个算法.第一步:把水注入电锅; 第二步:打开电源把水烧开; 第三步:把烧开的水注入热水瓶.(以上算法是解决某一问题的程序或步骤)2.例1(1)设计一个算法,判断7是否为质数.(2)设计一个算法,判断35是否是质数.3.探究:设计一个算法,判断整数n(n>2)是否为质数.四、课堂练习
1、(课本第5页练习1)任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积.解:第一步:输入任意正实数r 第二步:计算Sr2; 第三步:输出圆的面积S.2、(课本第5页练习2)任意给定一个大于1的正整数n,设计一个算法求出n的所有因数.解:根据因数的定义,可设计出下面的一个算法: 第一步:输入大于1的正整数n.第二步:判断n是否等于2,若n2,则n的因数为1,n;若n2,则执行第三步.第三步:依次从2到n1检验是不是整除n,若整除n,则是n的因数;若不整除n,则不是n的因数.五、课堂小结 1.算法的特性:
①有限性:一个算法的步骤序列是有限的,它应在有限步操作之后停止,而不能是无限的.②确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.③可行性:算法中的每一步操作都必须是可执行的,也就是说算法中的每一步都能通过手工和机器在有限时间内完成.2.描述算法的一般步骤:
①输入数据.②数据处理.③输出结果.六、作业
1、求1×3 × 5 × 7 × 9 × 11的值,写出其算法。
2、写出解不等式 x22x30的一个算法。
七、课后反思:
第五篇:算法的概念的教学设计
算法的概念的教学设计
一.内容和内容解析
算法是规则系统一种循序渐进解决问题的过程,尤指一种为在有限步骤内解决问题而建立的可重复应用的计算过程.
在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.
算法概念这一节,立足于用自然语言描述解决问题过程中的明确顺序,是实现用程序框图、程序语言的表示方式的基础.算法的思想方法几乎贯穿整个高中数学课程的所有章节,如解三角形、数学归纳法、数学建模等.本节的内容能为以后学习程序框图、基本算法语句以及选修1-2第四章“框图”内容奠定基础.
算法是连接人和计算机的纽带,是计算机科学的基础,利用计算机解决问题需要算法.首先研究解决问题的算法的自然语言表达,再把算法转化为程序,所以本节课学习用自然语言进行算法设计是使用计算机解决具体问题的一个极为重要的环节.二.目标和目标解析
本节课通过对具体问题的解决过程与步骤的分析,让学生体会算法的思想,了解算法的含义.具体目标为:
1. 要求学生了解算法的含义,体会算法的思想.2. 在分析实例的基础上了解算法的基本特征.3. 能够用自然语言描述一些具体问题的算法.本节课教学重点通过实例让学生体会算法思想,会用自然语言表达一些具体问题的算法.三.教学问题诊断
本节算法对学生来说并不陌生.生活中很多问题是按照指定的要求一步步解决的.初中学习的列方程解应用题的步骤、求二元一次方程组的解的过程等,都是算法的典型体现.质数的判定,高中学习的必修1中求函数零点的二分法的解题步骤、必修5中线性规划问题的解决过程等更成了算法的经典问题.算法的实质是将人的思维过程处理成计算机能够一步一步执行的步骤,进而转化为一步一步执行的程序.这种处理问题的方式,学生以往有一些经验,如教师对某些题型总结的较为固定的解题步骤.不过这种经验并没有得到应有的升华.只有在完整地学习了算法后,学生才能把这些知识提升到新的高度来认识.算法是对解题方案的准确而完整的构造性的描述.算法并不是容易理解和掌握的内容.教学难点是对算法概念的理解和对算法的描述,尤其是对循环问题的递归语言表达.当然,由于学生初次接触,要想学生在这节课就完全掌握用递归语句描述算法是很困难的,在后面的程序框图和基本的算法语句中这种表达还将得到进一步强化.教师可以首先通过实际生活中的例子和复习回顾二元一次方程组的求解过程,自然展示求解的“步骤”,从而帮助学生建立算法的概念.在建立了算法的概念以后,教师可以通过从算法的角度介绍学生熟悉的例子,帮助学生进一步领会算法的思想.接着通过例1和例2设计算法,帮助学生学会用自然语言描述算法.这里要注意:重点是通过设计帮助学生领会算法概念,而不在于算法所涉及问题的本身.教学时可以先让学生回顾问题的解题过程,再让他们整理出步骤,并有条理的用自然语言表达出来.通过这样的教学使学生体会算法设计的基本思路.本节课教学,要围绕算法概念,立足于用自然语言描述解决问题过程中的明确顺序.根据这节课的教学内容、教学目标,结合以上分析,本节课建议采用以教师引导分析帮助学生建立算法概念,着重一个“导”字,并通过适量的练习加以巩固.四.教学支持条件分析
为了有效实现教学目标,条件许可,可以借助计算机或者计算器来参与运算或表达算法.通过计算机演示帮助学生体会算法研究的价值.五.教学过程设计
(一)课题引入设计
1.看章头图,介绍图中算筹、算盘、计算机.2.提出问题:是什么把这三者联系在一起?引出算法.3.介绍后景朱世杰的《四元玉鉴》,引出介绍我国古代部分数学成就,对学生渗透爱国主义教育.4.从为了了解计算机的工作原理,让学生体会算法的研究价值.引出课题——算法的概念.(二)问题情境,引出算法概念
问题情境:一个农夫带着一条狼、一头山羊和一篮蔬菜要过河,但只有一条小船.乘船时,农夫只能带一样东西.当农夫在场的时候,这三样东西相安无事.一旦农夫不在,狼会吃羊,羊会吃菜.请设计一个方案,使农夫能安全地将这三样东西带过河.设计意图:通过这个学生感兴趣的问题,让学生有一个对算法的初步认识.师生活动:教师可以引导学生整理出按步骤解决问题的方案,并告诉学生这就是一个解决该问题的算法.第一步,农夫带羊过河.第二步,农夫独自回来.第三步,农夫带狼过河.第四步,农夫带羊回来.第五步,农夫带蔬菜过河.第六步,农夫独自回来.第七步,农夫带羊过河.当然,也有可能学生提出第二套过河方案.第一步,农夫带羊过河.第二步, 农夫独自回来.第三步,农夫带蔬菜过河.第四步,农夫带羊回来.第五步,农夫带狼过河.第六步,农夫独自回来.第七步,农夫带羊过河.在这里目的不是为了解决这个问题本身,而是为了从这里让学生初步了解算法,所以不需要两种方案都讲.只要在学生回答的基础上整理出一个解决问题的步骤即可.(三)解决问题,建立算法概念
“鸡兔同笼”是我国隋朝时期的数学著作《孙子算经》中的一个有趣而具有深远影响的问题,从学生熟悉的鸡兔同笼问题解决引出数学中的算法问题:
问题1:一个笼子里有一些鸡和兔,现在知道里面一共有35个头,94只脚,问鸡和兔各有多少只?
设计意图:通过对学生所熟悉的问题的解决,帮助学生形成按步骤表达解决问题的想法.为建立算法的概念,以及下面学习复杂问题中用自然语言描述算法打好基础.师生活动:这个问题学生容易解决,可以由学生独立思考,之后汇报其解决方案.从解决问题的过程看,解决以上问题可以分若干步完成: 第一步,设有x只鸡,y只兔,第二步,列方程:xy352x4y94x23
y12(1)(2)
第三步,解方程求得:第四步,答:笼子里有鸡23只,兔12只.教师在学生回答的基础上指出上述四个步骤构成解决“鸡兔同笼”问题的一个算法.同时指出:“第一步,设.第二步,列. 第三步,解.第四步,答.”这四个步骤构成了一般的列方程解应用题的算法.问题2:你能写出求解二元一次方程组: xy352x4y94(1)(2)的步骤吗?
设计意图:在上述“鸡兔同笼”问题中涉及解二元一次方程组的问题,通过复习所学过的解二元一次方程组的基本步骤,为建立算法概念做好准备.师生活动:教师先提出问题,让学生对求解过程一步步表达出来.解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,无任学生用代入消元法还是加减消元法,在这里目的不是为了解方程的方法,而是为了从这里让学生初步了解算法,所以不需要两种方法都讲.教师只要和学生共同整理出一个解方程的步骤即可.教师在学生回答的基础上指出:
1.以上求解的步骤就是解二元一次方程组的算法.2.本题的算法也适合一般的二元一次方程组的解法.问题2:写出求方程组a1xb1yc1a2xb2yc23
(1)(2)a1b2a2b10的解的步骤.设计意图:在复习解特殊二元一次方程组基本步骤的基础上.进一步复习回顾解一般的二元一次方程组的步骤,从而提高学生对算法的普遍适用性的认识,使学生认识到算法往往适合解决的是一类问题,为建立算法的概念做好铺垫.通过教师事先编好的程序的演示,让学生感受算法研究的价值.师生活动:教师在提出问题后,可以让学生来说出其解题步骤.第一步,(1)b2(2)b1,得(a1b2a2b1)xb2c1b1c2第二步,解(3),得x(3).b2c1b1c2.a1b2a2b1(4).第三步,(2)a1(1)a2得(a1b2a2b1)ya1c2a2c1第四步,解(4),得ya1c2a2c1.a1b2a2b1b2c1b1c2xa1b2a2b1第五步,得到方程组的解为:.ya1c2a2c1a1b2a2b1在完成求解一般的二元一次方程组步骤的基础上教师指出:
1.本题的步骤就是求一般的二元一次方程组的解的算法.2.用事先编好的程序,让学生输入数据,计算机直接给出方程组的解.(四)分析归纳,得到算法概念
问题3:到底什么是算法?如何表达算法的含义?
设计意图:有了上面所举实例,学生对算法的概念开始有了一些认识,但对概念的比较全面的描述还有一定的困难.教师在此处设问后,再通过帮助学生回顾上面关于算法的实例,引导学生进行归纳总结.让学生切实参与到概念的形成过程中来.师生活动:教师在提出问题后,可以先让学生用自己的语言表达对算法思想的理解,在学生回答的基础上教师进行归纳帮助学生建立算法的概念.教师指出:算法通常是指按照一定规则解决某一类问题的明确和有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.
教师可以通过从算法的角度介绍学生熟悉的例子,并尝试着让学生自己举算法的例子,帮助学生进一步领会算法的思想.例1.写出交换两个大小相同的杯子中的液体(A水、B酒)的一个算法.
例2.写出求一元二次方程axbxc0(a0)根的一个算法.(五)算法的应用
问题1设计一个算法,判断7是否为质数.设计意图:帮助学生学习算法的自然语言描述.然后通过一连串问题的追问,由浅入深,由特殊到一般.学习用递归语言表达有循环的算法问题.通过计算机演示,让学生感受算法研究的价值.师生活动:教师引导学生回忆质数的概念,提出如下一系列问题帮助学生形成解决问题的基本步骤,也就自然完成了一个算法的设计.1.什么是质数?
2.如何判断一个数是不是质数?
3.你在回答这个数是不是质数前,你在头脑中经历了怎样的思考、加工过程?
在学生回答这个问题的基础上,教师接着提出问题:
4.计算机如何判断整除呢?从而引导学生用规范的语言来表达算法.5.能否设计一个算法,判断35是不是质数?
6.判断7是否是质数的算法和判断35是否是质数的算法有什么不同?
7.任意给定一个大于2的整数n,能否设计一个算法对n是否为质数做出判断? 这时候学生知道要判断一个大于2的整数n是否为质数,只要根据质数的定义,用比这个整数小的数去除n,如果它只能被1和本身整除,而不能被其它整数整除,则这个数便是质数.有了前面的基础,这里学生多数可能回答用2~(n-1)去除n,于是将判断的过程表达出来就形成了解决问题的这样一个算法: 第一步,给定大于2的整数n.第二步,用2去除n,得到余数t.若t=0,则2能够整除n, n 不是质数,算法结束;否则,进入第三步.第三步,用3去除n,得到余数t.若t=0,则3能够整除n, n 不是质数,算法结束;否则,进入第四步.„„
第(n-1)步,用(n-1)去除n,得到余数t.若t=0,则(n-1)能够整除n, n 不是质数,算法结束;否则, n是质数.教师首先应该肯定学生的做法,但在学生回答的基础上向学生提出这里
从2~(n-1)都在重复同一件事,像这种情况在设计算法时经常遇到,然后教会学生用递归语言进行表达.在完成上述算法表达的基础上教师指出:
1.用自然语言描述一个算法,最便捷的方式就是按解决问题的步骤进行描述,每一步做一件事情.这样描述的算法体现按部就班程序性的特点.对于在解决问题过程中反复进行的步骤,同学们要学习用递归语言进行描述.用递归语言进行描述时,通常分三个步骤:首先要给一个初始值,接着表达重复做的事情,最后要进行终止判断.2.教师用事先按照上述步骤编写的程序演示,判断学生说出的整数是否为质数.问题2.写出用 “二分法”求方程x20(x0)的近似解的算法.设计意图:二分法是算法中的经典问题,具有明显的顺序和可操作的特点.安排这样一个例题既可以让学生进一步领会算法的思想,同时也可以达到巩固用自然语言描述的算
法,提高用自然语言描述算法的表达水平.师生活动:教师先引导学生回顾二分法求方程近似解的方法,然后引导学生说出解决该问题的每一个步骤,形成本例算法.教师可以通过以下一连串问题的设问,引导学生完成二分法求方程近似解的算法设计.1.二分法求方程近似解是通过求对应函数的近似零点得到的,所以首先要建立函数,而且要有具体精确度要求,因此第一步应该怎么做?
2.二分法分的是什么? 3.如何确定新区间的端点?
4.如何表达出反复二分区间的过程?(引导学生学习用递归语言表达)
第一步,令fxx2.给定精确度d.2第二步, 给定区间a,b,满足f(a)f(b)0.第三步,取中间点mab.2第四步,若f(a)f(m)0则含零点的区间为a,m;否则含零点的区间为m,b.将新得到的含零点的仍然记为a,b.第五步, 判断a,b的长度是否小于d或者f(m)是否等于0.若是,则m是方程的近似解;否则,返回第三步.
在得到算法后,教师可以带领学生看书,阅读课本第4页上有关内容.并说明按以上步骤,我们将依次得到课本第4页的表1-1和图1.1-1.于是,开区间(1.4140625,1.41796875)中的实数都是满足假设条件的原方程是近似解.(六)归纳小结
将本节的主要内容以问题的形式呈现,让学生通过思考和回答问题,达到回顾和总结的目的.
问题1:你能举出更多算法的例子吗?
设计意图:以举例的形式使学生体会算法的思想,以此评价他们对算法的概念以及特征的领会情况.师生活动:学生举例,师生共同评价.问题2:与一般解决问题的过程相比,你认为算法最重要的特征是什么?
设计意图:通过让学生思考回答来评价他们对算法的特征中顺序、确定、有限的步骤的领会情况.同时提高学生的总结、归纳、表达能力.师生活动:在学生回答的基础上,引导他们归纳:与一般解决问题的步骤相比,算法具有程序性、有限性、构造性、精确性等特点.六.目标检测设计
1.课堂检测
课本第6页练习1 2.课后检测
第1题.一位商人有9枚银元,其中有1枚略轻的是假银元.你能设计用天平(不用砝码)将假银元找出来的算法吗?
设计意图:通过本题评价学生能否结合实际问题,运用本节课所学的算法的思想,会用自然语言表达算法.
解:第一步,将9枚金币平均分成三组,将其中两组放在天平的两边.如果天平平衡, 则假的金币必定在另外一组;如果天平不平衡,则假的金币必定在较轻的一组.第二步,将有假金币的一组金币中,取出两枚金币,分别放在天平的两边.如果天平平衡,则假的金币必定是剩余的;如果天平不平衡,则假的金币必定在较轻的一边.第2题.任意给定一个大于1的正整数n,设计一个算法求出n的所有因数.设计意图:检查学生是否会用自然语言正确表达算法,训练学生的应变能力.第一步,给定一个大于1的整数n.第二步,令i1.第三步,用i去除n,得到余数为t,若t0,则i是n的一个因数输出i;否则,不输出i.第四步,给i增加1仍然用i表示.第五步,判断是否成立,若是,则算法结束;否则,返回第三步.第3题.写出解方程x2x30的两个不同的算法.设计意图:巩固用自然语言正确表达算法,了解算法的不唯一性.
分析:本题是求一元二次方程的解的问题,方法很多,下面分别用配方法、判别式法写出这个问题的两个算法.算法1: 第一步,移项,得:x2x3 ①
第二步,①式两边同加1并配方,得:x-14 ② 第三步,②式两边开方得: x12 ③ 第四步,解③得: x3或x1.算法2: 第一步,计算方程的判别式并判断其符号,243160.2222bb24ac第二步,将a1,b2,c3代入求根公式x.得:
2ax3或x1.7