18版高中数学第二章算法初步2.1算法的基本思想学案北师大版必修3

合集下载

高中数学第二章算法初步2.1算法的基本思想教案北师大版必修3

高中数学第二章算法初步2.1算法的基本思想教案北师大版必修3

第一节算法的基本思想本节教材分析一、三维目标1、知识与技能(1)通过对解决具体问题过程与步骤的分析,体会算法的思想,了解算法的含义;(2)能够用语言叙述算法;(3)会写出将自然数分解成素因数乘积的算法;(4)会写出求两个自然数的最大公因数的算法和两个自然数的最小公倍数的算法.2.过程与方法通过对物品价格的猜测,体会猜测者的基本思路,得到一个一般步骤,而这个步骤就是一个算法.结合具体问题,模仿算法步骤,写出将自然数分解成素因数乘积的算法和求两个自然数的最大公因数的算法,从而体会算法的基本思想,了解算法的含义.3.情感态度与价值观通过本节的学习,使学生对算法的思想有一个初步的认识,体会算法的基本思想——程序化思想,在归纳概括中培养学生的逻辑思维能力,从而进一步体会算法与现实世界的密切关系.二、教学重点:算法的含义及应用.三、教学难点:写出解决一类问题的算法.四、教学建议算法在中学数学课程中是一个新的概念,但没有一个精确化的定义,教科书只对它作了如下描述:“在数学中,算法通常是指按照一定规则解决某一类问题的明确有限的步骤.”为了让学生更好理解这一概念,教科书先从分析一个具体的二元一次方程组的求解过程出发,归纳出了二元一次方程组的求解步骤,这些步骤就构成了解二元一次方程组的算法.教学中,应从学生非常熟悉的例子引出算法,再通过例题加以巩固.新课导入设计导入一一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量狼就会吃羚羊.该人如何将动物转移过河?请同学们写出解决问题的步骤,解决这一问题将要用到我们今天学习的内容——算法.导入二大家都看过赵本山与宋丹丹演的小品吧,宋丹丹说了一个笑话,把大象装进冰箱总共分几步?答案:分三步,第一步:把冰箱门打开;第二步:把大象装进去;第三步:把冰箱门关上.上述步骤构成了把大象装进冰箱的算法,今天我们开始学习算法的概念.导入三算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础.在现代社会里,计算机已成为人们日常生活和工作中不可缺少的工具.听音乐、看电影、玩游戏、打字、画卡通画、处理数据,计算机是怎样工作的呢?要想弄清楚这个问题,算法的学习是一个开始.【教学过程】1.情境导入:算法作为一个名词,在中学教科书中并没有出现过,我们在基础教育阶段还没有接触算法概念。

2018秋新版高中数学北师大版必修3:第二章算法初步 2.1

2018秋新版高中数学北师大版必修3:第二章算法初步 2.1

目标导航
知识梳理
典型透析
随堂演练
12345
4.给出下面的算法: 1.输入x. 2.若x<0,则y=x+2;否则,y=x-1. 3.输出y. 当输入的x的值为-1,0,1时,输出的结果分别为 , , . 解析:根据输入的x的值与0的关系,选择执行不同的步骤. 答案:1 -1 0
§1 算法的基本思想
目标导航
解析:①中说明了从广州到北京的行程安排,完成了任务;③中给 出了求1+2+3+4的一个过程,最终得出结果.对于②,并没有说明如 何去算,故①③是算法,②不是算法.
答案:C
§1 算法的基本思想
目标导航
知识梳理
典例型透析
随堂演练
题型一
题型二
题型三
题型四
算法的概念 【例1】 下列关于算法的叙述中,不正确的是( ) A.计算机解决任何问题都需要算法 B.只有将要解决的问题分解为若干个步骤,并且用计算机能够识 别的语言描述出来,计算机才能解决问题 C.算法执行后可以不产生确定的结果 D.解决同一个问题的算法并不唯一,而且每一个算法都要一步一 步地执行,每一步都要产生确切的结果 解析:算法的主要特征是确定性,确定性包括结果明确,每一步产 生的结果和最后的结果都是明确的.因此,C项不正确,故选C. 答案:C
§1 算法的基本思想
目标导航
知识梳理
题型一
题型二
题型三
题型四
典例型透析
随堂演练
【变式训练3】 有两个杯子A,B分别盛放酒和水,要求将两个杯 子中液体互换,请设计一个算法.
解:算法步骤如下. 1.先取一个空杯子C. 2.将A杯中的酒倒入C杯内. 3.将B杯中的水倒入A杯内. 4.将C杯中的酒倒入B杯内.

2018版高中数学北师大版必修三学案:第二章 算法初步 1 算法的基本思想

2018版高中数学北师大版必修三学案:第二章 算法初步 1 算法的基本思想

[学习目标] 1.通过几个具体问题的求解过程,体会算法的基本思想.2.了解算法的含义和特征.3.会用自然语言描述简单的具体问题的算法.知识点一 算法的含义及特征1.算法的概念在解决某些问题时,需要设计出一系列可操作的或可计算的步骤,通过实施这些步骤来解决问题,通常把这些步骤称为解决这些问题的算法.2.算法的特征(1)有限性:一个算法的步骤序列是有限的,必须在有限的操作之后停止,不能是无限的.(2)确定性:算法中的每一步应该是确定的,并且能有效地执行且得到确定的结果,而不应当模棱两可.(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后续步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题.(4)不唯一性:求解某一问题的解法不一定是唯一的,对于同一个问题可以有不同的算法.(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.3.算法与计算机计算机解决任何问题都要依赖于算法.只有将解决问题的过程分解为若干个明确的步骤,即算法,并用计算机能够接受的“语言”准确地描述出来,计算机才能够解决问题.知识点二 算法的设计1.设计算法的目的设计算法的目的实际上是寻求一类问题的算法,它可以通过计算机来完成.设计算法的关键是把过程分解成若干个明确的步骤,然后用计算机能够接受的“语言”准确地描述出来,从而达到让计算机执行的目的.2.设计算法的要求(1)写出的算法必须能解决一类问题.(2)要使算法尽量简单、步骤尽量少.(3)要保证算法步骤有效,且计算机能够执行.思考 一次青青草原园长包包大人带着灰太狼、懒羊羊和一捆青草过河.河边只有一条船,由于船太小,只能装下两样东西.在无人看管的情况下,灰太狼要吃懒羊羊,懒羊羊要吃青草,请问包包大人如何才能带着他们平安过河?答 包包大人采取的过河的算法可以是第一步,包包大人带懒羊羊过河;第二步,包包大人自己返回;第三步,包包大人带青草过河;第四步,包包大人带懒羊羊返回;第五步,包包大人带灰太狼过河;第六步,包包大人自己返回;第七步,包包大人带懒羊羊过河.题型一 算法的概念例1 下列关于算法的说法,正确的个数有( )①求解某一类问题的算法是唯一的;②算法必须在有限步操作之后停止;③算法的每一步操作必须是明确的,不能有歧义或模糊;④算法执行后一定产生确定的结果.A.1 B.2C.3 D.4答案 C解析 由于算法具有有限性、确定性等特点,因而②③④正确,而解决某类问题的算法不一定唯一,从而①错.反思与感悟 算法实际上是解决问题的一种程序性方法,它通常解决某一个或某一类问题,在用算法解决问题时,体现了特殊与一般的数学思想.跟踪训练1 下列说法中是算法的有________(填序号).①从上海到拉萨旅游,先坐飞机,再坐客车;②解一元一次不等式的步骤是去分母、去括号、移项、合并同类项,系数化为1;③求以A (1,1),B (-1,-2)两点为端点的线段AB 的中垂线方程,可先求出AB 中点坐标,再求k AB 及中垂线的斜率,最后用点斜式方程求得线段AB 的中垂线方程;④求1×2×3×4的值,先计算1×2=2,再计算2×3=6,6×4=24,得最终结果为24;⑤x >2x +4.12答案 ①②③④解析 ①说明了从上海到拉萨的行程安排.②给出了解一元一次不等式这类问题的解法.③给出了求线段的中垂线的方法及步骤.④给出了求1×2×3×4的值的过程并得出结果.故①②③④都是算法.题型二 算法的设计例2 所谓正整数p 为素数是指:p 的所有约数只有1和p .例如,35不是素数,因为35的约数除了1,35外,还有5与7;29是素数,因为29的约数就只有1和29.试设计一个能够判断一个任意正整数n (n >1)是否为素数的算法.解 算法如下:第一步,给出任意一个正整数n (n >1).第二步,若n =2,则输出“2是素数”,判断结束.第三步,令m =1.第四步,将m 的值增加1,仍用m 表示.第五步,如果m ≥n ,则输出“n 是素数”,判断结束.第六步,判断m 能否整除n ,①如果能整除,则输出“n 不是素数”,判断结束;②如果不能整除,则转第四步.反思与感悟 设计一个具体问题的算法,通常按以下步骤:(1)认真分析问题,找出解决该问题的一般数学方法;(2)借助有关变量或参数对算法加以表述;(3)将解决问题的过程划分为若干步骤;(4)用简练的语言将这个步骤表示出来.跟踪训练2 判断一个大于2的整数是否为质数的算法步骤如何设计?解 第一步,给定大于2的整数n .第二步,令i =2.第三步,用i 除n ,得到余数r .第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示.第五步,判断“i>n-1”是否成立.若是,则n是质数,结束算法;否则,返回第三步.题型三 算法的应用例3 一位商人有9枚银元,其中有1枚略轻的是假银元,你能用天平(无砝码)将假银元找出来吗?解 方法一 算法如下.第一步,任取2枚银元分别放在天平的两边,若天平左、右不平衡,则轻的一枚就是假银元,若天平平衡,则进行第二步.第二步,取下右边的银元放在一边,然后把剩下的7枚银元依次放在右边进行称量,直到天平不平衡,偏轻的那一枚就是假银元.方法二 算法如下.第一步,把9枚银元平均分成3组,每组3枚.第二步,先将其中两组放在天平的两边,若天平不平衡,则假银元就在轻的那一组;否则假银元在未称量的那一组.第三步,取出含假银元的那一组,从中任取2枚银元放在天平左、右两边称量,若天平不平衡,则假银元在轻的那一边;若天平平衡,则未称量的那一枚是假银元.反思与感悟 对于查找、变量代换、文字处理等非数值型计算问题,设计算法时,首先建立过程模型,然后根据过程设计步骤,完成算法.跟踪训练3 “韩信点兵”问题:韩信是汉高祖手下的大将,他英勇善战,谋略超群,为汉朝的建立立下了不朽功勋.据说他在一次点兵的时候,为保住军事秘密,不让敌人知道自己部队的军事实力,采用下述点兵方法:①先令士兵从1~3报数,结果最后一个士兵报2;②又令士兵从1~5报数,结果最后一个士兵报3;③又令士兵从1~7报数,结果最后一个士兵报4.这样韩信很快算出自己部队里士兵的总数.请设计一个算法,求出士兵至少有多少人.解 第一步,首先确定最小的满足除以3余2的正整数:2;第二步,依次加3就得到所有除以3余2的正整数:2,5,8,11,14,17,20,…第三步,在上列数中确定最小的满足除以5余3的正整数:8.第四步,然后在自然数内,在8的基础上依次加上15的倍数,得到8,23,38,53,….第五步,在上列数中确定最小的满足除以7余4的正整数应为53.对算法的含义及特征的理解例4 计算下列各式中的S值,能设计算法求解的是________________.(1)S=1+2+3+ (100)(2)S=1+2+3+…+100+…;(3)S=1+2+3+…+n(n∈N*).错解 算法是为解决某一类问题而设计的一系列操作或可计算的步骤,也就是说在实际的算法中的值是具体的,因此(1)正确;而(3)中的值不具体,错误;对于(2)显然不符合算法的有限性,故只有(1)正确.错解分析 错识的根本原因在于对算法的理解不透彻.自我矫正 算法是为解决某一类问题而设计的一系列操作或可计算的步骤,也就是说在实际的算法中n的值是具体确定的,因此(1)(3)是正确的,而算法又是具有有限性的,即执行有限步操作后一定能解决问题,而(2)显然不符合算法的有限性,所以(2)不正确.答案 (1)(3)1.下列关于算法的说法中正确的是( )A.算法是某个具体的解题过程B.算法执行后可以不产生确定的结果C.解决某类问题的算法不是唯一的D.算法可以无限地操作下去不停止答案 C解析 算法与一般意义上具体问题的解法,既有区别,又有联系,算法的获得要借助一类问题的求解方法,而这一类具体问题都可以用这种方法来解决,因此A不对;算法中的每一步都应该是确定的,并且能有效执行,得到确定的结果,而不能含糊其辞或有歧义,所以B不正确;算法的操作步骤必须是有限的,必须在有限的步骤内完成,因此D不对;算法具有不唯一性,C正确.2.下列四种自然语言叙述中,能称为算法的是( )A.在家里一般是妈妈做饭B.做米饭需要刷锅、淘米、添水、加热这些步骤C.在野外做饭叫野炊D.做饭必须要有米答案 B解析 算法是做一件事情或解决一个问题等的程序或步骤,故选B.3.在用二分法求方程零点的算法中,下列说法正确的是( )A.这个算法可以求所有的零点B.这个算法可以求任何方程的零点C.这个算法能求所有零点的近似解D.这个算法可以求变号零点近似解答案 D解析 二分法的理论依据是函数的零点存在定理.它解决的是求变号零点的问题,并不能求所有零点的近似值.4.已知直角三角形两直角边长为a,b,求斜边长c的一个算法分下列三步:a2+b2(1)计算c=;(2)输入直角三角形两直角边长a,b的值;(3)输出斜边长c的值.其中正确的顺序是________.答案 (2)(1)(3)解析 算法的步骤是有先后顺序的,第一步是输入,最后一步是输出,中间的步骤是赋值、计算.5.下面是解决一个问题的算法:第一步:输入x.第二步:若x≥4,转到第三步;否则转到第四步.第三步:输出2x-1.第四步:输出x2-2x+3.当输入x的值为________时,输出的数值最小值为________.答案 1 2解析 所给算法解决的问题是求分段函数f(x)=Error!的函数值问题,当x≥4时,f(x)=2x-1≥2×4-1=7;当x<4时,f(x)=x2-2x+3=(x-1)2+2≥2,所以f(x)min=2,此时x=1.即输入x的值为1时,输出的数值最小,最小值为2.1.算法的特点:有限性、确定性、顺序性与正确性、不唯一性、普遍性.2.算法设计的要求:(1)写出的算法必须能够解决一类问题,并且能够重复使用.(2)要使算法尽量简单,步骤尽量少.(3)要保证算法正确,且算法步骤能够一步一步执行,在有限步后能得到结果.。

高中数学北师大版必修3第二章《算法初步》(算法的基本思想)word教案

高中数学北师大版必修3第二章《算法初步》(算法的基本思想)word教案

算法的基本思想一、教学内容:新课程高中数学(北师大版)必修3第二章《算法初步》第一节:算法的基本思想。

二、教学目标:1、通过对解决具体问题过程与步骤的分析,体会算法的思想,了解算法的含义及其基本特征;2、通过分析具体问题,抽象出算法的过程,培养抽象概括能力、语言表达能力和逻辑思维能力;3、通过算法的学习,进一步让学生体验到数学与现实世界的关系、数学与计算机技术的关系、提高学生学习数学的兴趣。

三、教学重点:1、了解算法的含义及其基本特征;2、掌握算法的表示形式。

四、教学难点:算法的表示形式。

五、教学方法:任务驱动法。

六、教学过程:(一)情景导入:在与学生的寒暄中引入今天的课题,并让学生来猜猜老师衣服的价格,提出问题:“怎样才能在有限的次数范围内猜中衣服的价格呢?”师:采用对半价格区间去猜数比较合理,在数学上我们称这种方法为“二分法”下节课我们要重点学习这种方法的应用。

师:可见我们在处理一个问题时,若是有一个好的指导思想,我们在具体行动中就不会显得很盲目,按照既定的策略,在有限的步骤内就可以达到目的。

今天我们这节课的课题就是研究有关解决问题的基本思想方法,在数学上,我们称之为“算法”。

这里的“算法”不是指狭义上的计算方法,而是广义范围内一切解决问题的思想方法。

下面我们再通过几个实例来体会一下算法的基本思想及其算法具有哪些特征。

(二)新课:师:我们先看一下书上的例子例:请设计算法,将936分解成素因素的乘积。

师:请同学们在最短的时间内分解好,提问。

=⨯⨯⨯⨯⨯生:9362223313师:请用语言描述你的思路过程。

若是学生很难用语言描述,老师要及时引导。

解:算法步骤如下:1. 判断936是否为素数:否=⨯2. 确定936的最小素因数:2. 93624683. 判断468是否为素数:否=⨯⨯4. 确定468的最小素因数:2. 936222345. 判断234是否为素数:否=⨯⨯⨯6. 确定234的最小素因数:2. 9362221177. 判断117是否为素数:否=⨯⨯⨯⨯8. 确定234的最小素因数:3. 9362223399. 判断39是否为素数:否=⨯⨯⨯⨯⨯10.确定234的最小素因数:3. 936222331311. 判断13是否为素数:是素数,分解结束 .师:以上就是分解素因数的一个算法,其实算法就是解决问题的一系列步骤,依照这些步骤,按部就班就可以完成任务。

2018版高中数学北师大版必修三学案:第二章 疑难规律

2018版高中数学北师大版必修三学案:第二章 疑难规律

1算法概念的诠释同学们也许对算法这个概念很陌生,但其实大家在日常生活中已经接触过很多算法了,广义地说,算法就是做某一件事情的步骤或程序.菜谱是做菜肴的“算法”,洗衣机的使用说明书是操作洗衣机的“算法”.每个算法都闪耀着人类的智慧,阅读和学习这些东西会给我们带来一种难以用语言表达的满足感和快感.在以后的学习和工作中我们会不断从实际应用中了解和领会算法是如何解决各个领域的实际问题,推动人类文明的发展的.一、算法的特征1.确定性算法中的每条运算规则必须是明确定义的、可行的,每一个步骤只能有一个确定的后继步骤,运行终止应得到问题的解答或指出问题没有解答.2.有限性一个算法必须保证在执行有限步后结束,至少不能出现无限循环或死循环.在此基础上越简洁越快越好.越简洁,占用内存越少,对设备的要求越基本;越快,这个意义就不用说了吧.比如一个计算对方导弹轨迹的算法,如果等你算出来,那边导弹已经落地了,那还有什么意义?二、算法的思想专业的事交给专业的人去做.普通人只要按专业人士给出的步骤一步一步地去完成,这就是算法的思想,即程序思想,你也可以理解为傻瓜化思想.另外,算法强调的是通性通法,即给出一个算法,实际上是给出了一种解决一类问题的方法.比如你给出一个计算圆的面积的算法,它应该能计算各种半径的圆的面积,而不是只适用于半径为某一具体数的圆.三、特别提示1.算法中的每一步应该是确定的并且能够有效地执行且得到确定的结果,而不应当模棱两可,如求的近似值却没有要求近似的精确度,则该问题不能求解.2.现代算法主要是面向计算机的,如果算法中没有输出,程序也能运行,但是运行结果无法输出.如果想要得到结果,那就要有输出.3.只要有公式可以利用,利用公式解决问题是最理想、最简便的方法,比如在写解方程x 2-3x -4=0的算法时,用求根公式来做,步骤则较为简洁.4.求解某一个问题的算法一般不是唯一的,我们通常选择较为简单的算法. 四、典例分析例1 已知一个等边三角形的周长为a ,求这个三角形的面积,设计一个算法解决这个问题. 分析 对于已知等边三角形的边长求面积的题目同学们已经很熟悉,回顾其中的解题过程不难得到这个问题的算法步骤.但学会清晰条理地表达自己的想法,也是一个基本的要求. 解 算法步骤如下: 第一步,输入a 的值. 第二步,计算l =a3的值.第三步,计算S =34×l 2的值. 第四步,输出S 的值.例2 下面给出了一个问题的算法: 第一步,输入x .第二步,若x ≥4,则执行第三步,否则执行第四步. 第三步,输出2x -1. 第四步,输出x 2-2x +3. 这个算法解决的问题是什么?分析 依据题目给出的算法步骤依次执行,是读懂算法的一个重要而基本的办法. 解 这个算法先是输入一个变量x ,当x ≥4时输出2x -1,当x <4时输出x 2-2x +3,不难发现这个算法解决的问题是求分段函数f (x )=⎩⎪⎨⎪⎧2x -1,x ≥4,x 2-2x +3,x <4的函数值.2 典型算法举例1.解方程(方程组)、不等式的算法例1 用自然语言描述求一元二次方程ax 2+bx +c =0的根的算法.思维切入 对于求方程的根,解方程组这样的数值型的问题,我们都有具体的计算方法,只要我们把平时的计算方法严格地按步骤描述出来即可.因此我们很容易得到下面的算法. 解 用自然语言来描述算法, 第一步,计算Δ=b 2-4ac ;第二步,如果Δ<0,则原方程无实数解,输出“无实数解”;否则(Δ≥0)x 1=-b +b 2-4ac2a,x 2=-b -b 2-4ac 2a,输出x 1,x 2的值.点评 第二步中包含了一个判断Δ=b 2-4ac 是否小于零的条件,并根据判断结果进行不同的处理.算法是否“健壮”,也是衡量算法优劣的重要指标.如果思维不严谨,比如这个算法忘记考虑Δ=b 2-4ac 小于零的情形,实际运算一旦遇到,则会导致不是出错就是死机,那这个算法就是不“健壮”的. 例2 写出解x 2-4x +3<0的算法.思维切入 只要把平时的固定解法有条理地写出来,即为解不等式的算法. 解 第一步,求出对应方程的根x 1=1,x 2=3; 第二步,确定根的大小x 1<x 2; 第三步,写出解集{x |1<x <3}. 2.套用公式求值的算法例3 已知摄氏温度C 与华氏温度F 的关系是F =C ×95+32,写出由摄氏温度求华氏温度的算法.思维切入 这是一个函数求值问题,给C 赋值再代入解析式求F . 解 第一步,输入摄氏温度C ; 第二步,代入F =C ×95+32;第三步,输出华氏温度F .点评 平时计算我们只注重第二步,其他步骤往往忽略了,算法却讲究“按部就班”,这类问题的算法一般分为三步:第一步输入值,第二步套用公式,第三步输出结果. 3.判断性质型问题的算法例4 试描述判断圆(x -a )2+(y -b )2=r 2和直线Ax +By +C =0位置关系的算法. 思维切入 直线与圆的关系有三种:相离、相切、相交,如果圆心到直线的距离d >r ,则直线与圆相离,d =r 则直线与圆相切,d <r 则直线与圆相交.因此我们可以先求出圆心到直线的距离d ,然后再和r 比较.解 第一步,输入圆心的坐标、直线方程的系数和半径r ; 第二步,计算z 1=Ax 0+By 0+C ; 第三步,计算z 2=A 2+B 2; 第四步,计算d =|z 1|z 2; 第五步,如果d >r 则相离,如果d =r 则相切,如果d <r 则相交.点评 算法要求分解成简单计算,不要直接计算d =|Ax 0+By 0+C |A 2+B 2.一个比较大的程序,会分成若干模块,一个模块出了问题只需要修改这一个模块,而不需要全盘翻工.4.累加、累乘问题的算法例5用自然语言描述求解mul=1×2×3×4×5×6问题的算法.思维切入根据算法的特点,我们学过的加、减、乘、除运算法则都是算法,只要按照具体的规则有步骤地描述过程,便有了该题的算法.解第一步,计算1×2,得2;第二步,将第一步中的运算结果2与3相乘得6;第三步,将第二步中的运算结果6与4相乘得24;第四步,将第三步中的运算结果24与5相乘得120;第五步,将第四步中的运算结果120与6相乘得720.点评如果让人一步一步地做,太枯燥了.但这恰好是计算机的优势.所以算法好不好,还分让谁来执行,对人来讲是奇笨无比的办法,对计算机却可能是一个好办法.思维拓展该算法包含一个重复操作的过程是循环结构,我们可将算法改造得更为简练、科学.解第一步,设i=1,P=1;第二步,如果i≤6执行第三步,否则执行第五步;第三步,计算P×i并将结果代替P;第四步,将i+1代替i,转去执行第二步;第五步,输出P.点评i称为计数变量,每一次循环它的值增加1,由1变到6,P是一个累乘变量,每一次循环得到一个新的结果,然后新的结果代替原值.3算法框图画法全知晓一、画算法框图的基本步骤第一步,设计算法,因为算法的设计是画算法框图的基础,所以画算法框图前,首先写出相应的算法步骤,并分析算法需要用哪种基本逻辑结构(顺序结构、选择结构、循环结构)完成.第二步,把算法步骤转化为对应的算法框图,在这种转化过程中往往需要考虑很多细节,是一个将算法“细化”的过程.第三步,将所有步骤的算法框图用流程线连接起来,并加上终端框,得到整个表示算法的算法框图.二、画算法框图的规则1.使用标准的框图符号.2.框图一般按从上到下、从左到右的方向来画.3.除判断框外,大多数框图符号只有一个进入点和一个退出点,判断框是唯一具有超过一个退出点的符号.4.在图形符号内描述的语言要简练清楚. 三、典例分析 1.顺序结构顺序结构是最简单的算法结构,是任何一个算法都离不开的结构.若一个算法由若干个依次执行的步骤组成,则在画算法框图时,可直接由顺序结构完成.因为在其他的结构中都会涉及到顺序结构,所以关于顺序结构的画法,在此不再单独叙述. 2.选择结构设计算法框图时,若是分段函数或执行时需要先判断才能执行的问题,则需要用到判断框,引入选择结构.例1 如图,在边长为4的正方形ABCD 的边上有一点P ,沿着BCDA 的方向由点B 向点A 运动,设点P 运动的路程为x (0<x <12),△APB 的面积为y ,画出y 关于x 的关系式的算法框图.分析 随着点P 的位置不同,△APB 的面积与路程x 有不同的对应关系,所以需要先判断点P 的位置,这就需要用到选择结构,先根据题意写出算法,再根据算法画出算法框图.即 第一步,按照题意,y 与x 的关系满足分段函数: y =⎩⎪⎨⎪⎧2x ,0<x ≤4,8,4<x ≤8,2(12-x ),8<x <12.第二步,用合适的含选择结构的算法框图表示该分段函数. 解 算法框图如图所示.点评 该题中的分段函数是分三段的函数,需引入两个判断框.至于判断框的内容是没有顺序的,但与下一图形的内容或操作必须相互对应.同时,在画算法框图时,要特别注意图形符号的规范性. 3.循环结构如果问题中进行了重复的运算,且有相同的规律,就可根据需要引入相关变量,利用这些规律组成一个循环体,用循环结构来解决.例2 某机械厂为增加产值进行了技术革新.据统计2009年的生产总值为500万元,技术革新后预计每年的生产总值比上一年增加5%,问最早要到哪一年生产总值才能超过600万元,试用算法框图表示.分析 用变量n ,a 分别表示所经过的年数和生产总值的数量,注意变量的初始值以及递加的值是多少.由题意知第n 年后的生产总值为a =500(1+0.05)n ,此时为(2009+n )年.由于题中进行了重复的运算,故应引入循环结构. 解 算法框图如图所示.4 例说选择结构选择结构是三种基本逻辑结构之一,可以解决一些含有条件判断的算法问题,如分段函数求值问题、比较大小问题、分类讨论问题和一些实际问题等.下面就其应用略举两例,供同学们学习时参考. 一、分段函数求值问题例1 已知函数y =⎩⎪⎨⎪⎧-x +1,x >0,0,x =0,x +3,x <0,请设计算法框图,要求输入自变量x ,输出函数值y .分析 输入自变量x 的值,首先判断x 与0的大小关系,再代入相应的表达式求函数值. 解 算法框图如图.点评求分段函数的函数值,需先判断再执行步骤,需要引入选择结构.在使用选择结构时,要注意判断条件的设定不重不漏,确保各种可能的判断值有正确、唯一的流向.二、实际应用问题例2 邮政电子汇款单笔最高限额为1万元,每笔汇款的资费标准为汇款金额的1%,最低收费为2元,最高收费为50元.试编写一算法框图求出当汇款x (0<x≤10 000)元时,应交纳资费多少元.分析由题意分析,当x≤200时,应交纳资费2元,当x≥5 000时,应交纳资费50元,所以引入选择结构,200和5 000是两个分段点.解算法框图如图.点评很多在一些需要判断的实际问题,比如水电费,纳税额,结构工资,身体各项指标是否正常等,一般都会用到选择结构,在设计算法框图时,可先根据题意,设计算法,再根据算法画出算法框图.5循环结构的应用在循环结构中,经常会出现两个变量:计数变量和累计变量.计数变量往往出现在循环结构中,起到循环计数的作用,这个变量一般出现在执行或终止循环体的条件中;而累计变量用于输出结果,往往与计数变量同步执行,一般有累加与累乘两种.下面举例说明循环结构的应用.一、求和或求积问题例1 设计两个求1+3+5+…+2 011的值的算法的算法框图.分析 本题是一个累加问题,由于加数较多,采用逐一相加的思路不可取,引入变量,应用循环结构解决:(1)设一个循环变量为i ,初始值为1;再设一个累加变量为S ,初始值为0.(2)循环体为S =S +i ,i =i +2.(3)终止条件为i >2 011. 解 两种方法:算法框图如图1和如图2所示.点评 涉及求多项的和与积的算法框图要用到循环结构和选择结构.画图时要注意循环变量的初始值、终值以及循环变量的增量在程序中的作用.本题代表了一类相邻两个数的差为常数的求和问题的解法,在设计算法框图时要注意前后两个加数相差2,此时计数变量不是i =i +1,而是i =i +2,要根据题意灵活地改变算法中的相应部分. 二、叠加求值例2 画出求式子(共9个3)的值的一个算法框图.分析 本题是一个叠加问题,由于前后重复了多次相同的运算,所以应采用循环结构来设计算法,但利用循环结构实现算法需搞清初始值是什么.本题中初始值可设定为a 1=13,第一次循环得到a 2=13+a 1,第二次循环得到a 3=13+a 2,……,a 9=13+a 8,共循环了8次.解 算法框图如图所示.点评如果算法问题里涉及的运算有许多重复的步骤,且数之间有相同的规律,那么可引入变量,应用循环结构.在循环结构中,要注意根据条件,设计合理的计数变量、累计变量,特别要注意条件的表述要恰当、精确,以免出现多一次循环或少一次循环的情况.6三种逻辑结构辨与析算法中有三种逻辑结构,即顺序结构、选择结构、循环结构,同学们初学这三种结构,容易混淆.本文将这三种结构进行比较,希望同学们能深刻体会这三种结构的差异与共同点.一、三种基本逻辑结构二、三种基本逻辑结构的共同特点1.只有一个入口.2.只有一个出口,注意一个菱形判断框有两个出口,而一个选择结构只有一个出口,不要将菱形框的出口和选择结构的出口混为一谈.3.结构内的每一部分都有机会被执行到,即对每一个框来说都应当有一条从入口到出口的路径通过它,如图1中的A,没有一条从入口到出口的路径通过它,是不符合要求的算法框图.4.结构内不存在死循环,即无终止的循环,如图2就是一个死循环,在算法框图中是不允许有死循环出现的.三种基本结构的这些共同特点,也是检查一个算法框图或算法是否正确、合理的方法和试金石.7条件语句小聚1.“If—Then”语句“If—Then”语句的一般格式如下对应的框图如图1所示图1计算机在执行“If—Then”语句时,首先对If后的条件进行判断,如果符合条件,就执行Then后面的语句,若不符合条件,则直接结束该条件语句,转而执行后面的语句.2.“If—Then—Else”语句“If—Then—Else”语句的一般格式如下对应的框图如图2所示图2计算机在执行“If—Then—Else”语句时,首先对If后的条件进行判断,如果符合条件,则执行Then后面的“语句1”;若不符合条件,则执行Else后面的“语句2”.3.条件语句“If—Then—Else”可以嵌套,其格式为注意:使用条件语句时应注意以下几点:(1)条件语句必须以If语句开始,以End If语句结束,一个End If语句必须和一个If语句对应.(2)如果我们的程序只需对条件为真的情况作出处理,不需处理条件为假的情况,则条件语句省略Else,格式由If—Then—Else语句变成If—Then语句.8透析循环语句两种循环语句1.For语句的一般形式是执行步骤:当计算机执行For语句时,一般先执行一次循环体,当循环变量在初始值与终值之间时,执行循环体;当循环变量超过终值时,不再执行循环体,跳出循环体执行后面的语句.2.Do Loop语句的一般形式是计算机执行Do Loop语句,先执行一次循环体,若符合条件,继续执行循环体;当不符合条件时,跳出循环,执行Loop While后的语句.9算法在生活实际中的应用数学来源于生活,服务于社会,数学与生活息息相关,数学是有用的,在生活中做一件事情的方法和步骤有多种,生活中的许多问题都可以用算法描述,用算法框图表达.下面请欣赏三例算法问题.一、第29届奥林匹克运动会的申办例1北京成功举办了2008年第29届奥林匹克运动会.你知道在申办奥运会的最后阶段,国际奥委会是如何通过投票决定主办权归属的吗?对选出的5个申办城市进行表决的操作程序是首先进行第一轮投票,如果有一个城市得票数超过总票数的一半,那么该城市将获得举办权;如果所有申办城市的得票数都不超过总票数的一半,则将得票数最少的城市淘汰,然后重复上述过程,直到选出一个申办城市为止.请设计一个算法表述上面过程,并画出算法框图.解算法步骤如下:第一步,投票;第二步,统计票数,如果有一个城市得票数超过总票数的一半,那么该城市就获得主办权;否则淘汰得票数最少的城市,转第一步;第三步,宣布主办城市.算法框图如图所示:点评算法本身就是用计算机解决一些实际问题的方法,一定要充分理解算法的特点.二、奖金的发放例2某科研所决定拿出一定量的资金对科研人员进行奖励,按照科研成果价值的大小决定奖励前10名.第1名得全部奖金的一半多1万元,第2名得剩余的奖金的一半多1万元,第3名再得剩余奖金的一半多1万元,以此类推,到第10名恰得奖金1万元,请设计一个算法语句求科研所最初拿出多少奖金进行奖励,并画出算法框图.解 第10名的奖金额S 1=1万元,第9名和第10名的总奖金额S 2=(1+1)×2=4万元,第8名、第9名和第10名的总奖金额S 3=(4+1)×2=10万元......总奖金额S 10=(S 9+1)×2,得递推公式S 1=1,S n +1=(S n +1)×2,n =1,2, (9)算法语句:算法框图如图所示:三、李白酒壶中的酒例3 李白是我国唐代的一位伟大诗人,平时很喜欢喝酒,有一首打油诗讲了李白买酒的一件趣事,“无事街上走,提壶去买酒,遇店加一倍,见花喝一斗,三遇店和花,喝光壶中酒.”问:李白的酒壶中原来有多少酒?请用算法解释,画出算法框图并写出算法语句.解 通过逆向思考,李白遇到第三枝花时,壶中有1斗酒,遇到第三个店时,壶中有12斗酒;遇到第二枝花时,壶中有1+12=32斗酒,遇到第二个店时,壶中有12×32=34斗酒;遇到第一枝花时,壶中有1+34=74斗酒,遇到第一个店时,壶中有12×74=78斗酒. 根据以上分析可得算法步骤如下:第一步,S =0;第二步,I =1;第三步,S =S +12; 第四步,I =I +1;第五步,如果I >3,则输出S ;否则,转第三步. 算法框图如图所示:算法语句:。

数学北师大版必修3教案: 第二章算法初步2.1 含解析

数学北师大版必修3教案: 第二章算法初步2.1 含解析

§2 算法的基本结构及设计2.1 顺序结构与选择结构整体设计教学分析用自然语言表示的算法步骤有明确的顺序性,但是对于在一定条件下才会被执行的步骤,以及在一定条件下会被重复执行的步骤,自然语言的表示就显得困难,而且不直观、不准确.因此,本节有必要探究使算法表达得更加直观、准确的方法.流程图用图形的方式表达算法,使算法的结构更清楚、步骤更直观也更精确.为了更好地学习流程图,我们需要掌握程序框的功能和作用,需要熟练掌握三种基本逻辑结构.三维目标1.熟悉各种程序框及流程线的功能和作用.2.通过模仿、操作、探索,经历通过设计流程图表达解决问题的过程.在具体问题的解决过程中,理解流程图的三种基本逻辑结构:顺序结构、选择结构、循环结构.3.通过比较体会流程图的直观性、准确性.重点难点教学重点:流程图的画法.教学难点:流程图的画法.课时安排2课时教学过程第1课时顺序结构导入新课思路1(情境导入).我们都喜欢外出旅游,优美的风景美不胜收,如果迷了路就不好玩了,问路有时还听不明白,真是急死人,有的同学说买张旅游图不就好了吗,所以外出旅游先要准备好旅游图.旅游图看起来直观、准确,本节将探究使算法表达得更加直观、准确的方法.今天我们开始学习流程图.思路2(直接导入).用自然语言表示的算法步骤有明确的顺序性,但是对于在一定条件下才会被执行的步骤,以及在一定条件下会被重复执行的步骤,自然语言的表示就显得困难,而且不直观、不准确.因此,本节有必要探究使算法表达得更加直观、准确的方法.今天开始学习流程图.推进新课新知探究提出问题(1)什么是流程图?(2)说出终端框(起止框)的图形符号与功能.(3)说出输入、输出框的图形符号与功能.(4)说出处理框(执行框)的图形符号与功能.(5)说出判断框的图形符号与功能.(6)说出流程线的图形符号与功能.(7)说出连接点的图形符号与功能.(8)总结几个基本的程序框、流程线和它们表示的功能.(9)什么是顺序结构?讨论结果:(1)流程图又称程序框图,是一种用程序框、流程线及文字说明来表示算法的图形.在流程图中,一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来,表示算法步骤的执行顺序. (2)椭圆形框:表示程序的开始和结束,称为终端框(起止框).表示开始时只有一个出口;表示结束时只有一个入口. (3)平行四边形框:表示一个算法输入和输出的信息,又称为输入、输出框,它有一个入口和一个出口. (4)矩形框:表示计算、赋值等处理操作,又称为处理框(执行框),它有一个入口和一个出口. (5)菱形框:是用来判断给出的条件是否成立,根据判断结果来决定程序的流向,称为判断框,它有一个入口和两个出口. (6)流程线:表示程序的流向.(7)圆圈:连接点.表示相关两框的连接处,圆圈内的数字相同的含义表示相连接在一起.(9)很明显,顺序结构是由若干个依次执行的步骤组成的,这是任何一个算法都离不开的基本结构.顺序结构对应的流程图,如图1所示:图1应用示例例1 尺规作图,确定线段AB 一个5等分点.分析:确定线段AB 的5等分点,是指在线段AB 上确定一点M,使得AM=51AB.同学们都熟悉解决这个问题的方法:第一,从A 点出发作一条与原直线不重合的射线;第二,任取射线上一点C,并在射线上作线段AD,使AD=5AC;第三,连接DB,并过C 点作BD 的平行线交AB 于M,M 就是要找的5等分点. 这个过程也需要一步一步来实现.作法:作图步骤如下:1.如图2,从已知线段的左端点A 出发,作一条射线AP;图22.在射线上任取一点C,得线段AC;3.在射线上作线段CE=AC;4.在射线上作线段EF=AC;5.在射线上作线段FG=AC;6.在射线上作线段GD=AC,那么线段AD=5AC;7.连接DB;8.过C 作BD 的平行线,交线段AB 于M,这样点M 就是线段AB 的一个5等分点. 这个实现过程可以用图3来表示.图3点评:通常,为了使算法结构更加清晰,可借助图来帮助描述算法.图的特点是直观、清楚,便于检查和交流.顺序结构的图见图4.通常,像这样的图叫作流程图.图4例2 已知一个三角形三条边的边长分别为a ,b ,c ,利用海伦—秦九韶公式设计一个计算三角形面积的算法,并画出流程图.(已知三角形三边边长分别为a,b,c ,则三角形的面积为S=))()((c p b p a p p ---,其中p=2cb a ++.这个公式被称为海伦—秦九韶公式) 算法分析:只需先算出p 的值,再将它代入分式,最后输出结果.因此只用顺序结构应能表达出算法.算法步骤如下:1.输入三角形三条边的边长a,b,c.2.计算p=2cb a ++. 3.计算S=))()((c p b p a p p ---.4.输出S. 流程图如下:图5点评:很明显,顺序结构是由若干个依次执行的步骤组成的,它是最简单的逻辑结构,它是任何一个算法都离不开的基本结构. 变式训练下图所示的是一个算法的流程图,已知a 1=3,输出的b=7,求a 2的值.图6解:根据题意221a a +=7, ∵a 1=3,∴a 2=11, 即a 2的值为11. 知能训练写出通过尺轨作图确定线段AB 的一个5等分点的流程图. 解:利用我们学过的顺序结构得流程图如下:图7点评:这个算法步骤具有一般性,对于任意自然数n ,都可以按照这个算法的思想,设计出确定线段的n 等分点的步骤解决问题,通过本题学习可以巩固顺序结构的应用. 拓展提升如下给出的是计算101614121++++ 的值的一个流程图,其中处理框内应填入的是___________.图8答案:S=S+101课堂小结1.掌握流程图的画法和功能.2.掌握顺序结构的应用,并能解决与顺序结构有关的流程图的画法. 作业习题2—2 A 组 1.设计感想首先,本节的引入新颖独特,旅游图的故事阐明了学习流程图的意义.通过丰富有趣的事例让学生了解了什么是流程图,进而激发学生学习流程图的兴趣.本节设计题目难度适中,逐步把学生带入知识的殿堂,是一节好的课例.(设计者:张新军)第2课时选择结构导入新课思路1(情境导入).我们以前听过这样一个故事,野兽与鸟发生了一场战争,蝙蝠来了,野兽们喊道:你有牙齿是我们一伙的,鸟们喊道:你有翅膀是我们一伙的,蝙蝠一时没了主意.过了一会儿蝙蝠有了一个好办法,如果野兽赢了,就加入野兽这一伙,否则加入另一伙,事实上蝙蝠用了分类讨论思想,在算法和流程图中也经常用到这一思想方法,今天我们开始学习新的逻辑结构——选择结构.思路2(直接导入).前面我们学习了顺序结构,顺序结构像是一条没有分支的河流,奔流到海不复回,事实上多数河流是有分支的,今天我们开始学习有分支的逻辑结构——选择结构. 推进新课新知探究提出问题(1)举例说明什么是分类讨论思想?(2)什么是条件结构?(3)试用流程图表示条件结构.讨论结果:(1)例如解不等式ax>8(a≠0),不等式两边需要同除a,需要明确知道a的符号,但条件没有给出,因此需要进行分类讨论,这就是分类讨论思想.(2)在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.选择结构就是处理这种过程的结构.(3)用流程图表示条件结构如下.选择结构:先根据条件作出判断,再决定执行哪一种操作的结构就称为选择结构(或分支结构),如图1所示.执行过程如下:条件成立,则执行A框;不成立,则执行B框.图1注:无论条件是否成立,只能执行A、B之一,不可能两个框都执行.应用示例例1 通常说一年有365天,它表示地球围绕太阳转一周所需要的时间,但事实并不是这样简单.根据天文资料,地球围绕太阳转一周所需要的精确时间是365.242 2天,称之为天文年.这个误差看似不大,却引起季节和日历之间难以预料的大变动.在历法上规定四年一闰,百年少一闰,每四百年又加一闰.如何判断某一年是不是闰年呢?请设计一个算法,解决这个问题,并用流程图描述这个算法.分析:设y为年份,按照历法的规定,如果y为闰年,那么或者y能被4整除不能被100整除,或者y能被400整除.对于给定的年份y,要确定它是否为闰年,需要进行判断,判断的结果决定后面的步骤,像这样的结构通常称作选择结构.选择结构的算法流程图可以用图2来表示.图2解:算法步骤如下:1.若y不能被4整除,则输出“y不是闰年”.2.若y能被4整除,则判断y是否能被100整除:(1)若y不能被100整除,则输出“y是闰年”;(2)若y能被100整除,则判断y是否能被400整除;①若y能被400整除,则输出“y是闰年”;②若y不能被400整除,则输出“y不是闰年”.这个算法的流程图如下:图3变式训练任意给定3个正实数,设计一个算法,判断以这3个正实数为三边边长的三角形是否存在,并画出这个算法的流程图.算法分析:判断以3个任意给定的正实数为三条边边长的三角形是否存在,只需验证这3个数中任意两个数的和是否大于第3个数.这个验证需要用到条件结构.算法步骤如下:1.输入3个正实数a,b,c.2.判断a+b>c,b+c>a,c+a>b是否同时成立.若是,则存在这样的三角形;否则,不存在这样的三角形.流程图如图4:图4点评:根据构成三角形的条件,判断是否满足任意两边之和大于第三边,如果满足则存在这样的三角形,如果不满足则不存在这样的三角形.这种分类讨论思想是高中的重点,在画流程图时,常常遇到需要讨论的问题,这时要用到选择结构.例2 设计一个求解一元二次方程ax 2+bx+c=0的算法,并画出流程图表示. 算法分析:我们知道,若判别式Δ=b 2-4ac>0,则原方程有两个不相等的实数根 x 1=a b 2∆+-,x 2=ab 2∆--; 若Δ=0,则原方程有两个相等的实数根x 1=x 2=-ab2; 若Δ<0,则原方程没有实数根.也就是说,在求解方程之前,可以先判断判别式的符号,根据判断的结果执行不同的步骤,这个过程可以用条件结构实现.又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算x 1和x 2之前,先计算p=a b 2-,q=a2∆. 解决这一问题的算法步骤如下: 1.输入3个系数a ,b ,c. 2.计算Δ=b 2-4ac.3.判断Δ≥0是否成立.若是,则计算p=a b 2-,q=a2∆;否则,输出“方程没有实数根”,结束算法.4.判断Δ=0是否成立.若是,则输出x 1=x 2=p ;否则,计算x 1=p+q ,x 2=p-q ,并输出x 1,x 2. 流程图如下:图5例3 设计算法判断一元二次方程ax 2+bx+c=0是否有实数根,并画出相应的流程图. 解:算法步骤如下:1.输入3个系数:a ,b ,c.2.计算Δ=b 2-4ac.3.判断Δ≥0是否成立.若是,则输出“方程有实根”;否则,输出“方程无实根”.结束算法. 相应的流程图如下:图6点评:根据一元二次方程的意义,需要计算判别式Δ=b 2-4ac 的值.再分成两种情况处理:(1)当Δ≥0时,一元二次方程有实数根;(2)当Δ<0时,一元二次方程无实数根.该问题实际上是一个分类讨论问题,根据一元二次方程系数的不同情况,最后结果就不同.因而当给出一个一元二次方程时,必须先确定判别式的值,然后再用判别式的值的取值情况确定方程是否有解.该例仅用顺序结构是办不到的,要对判别式的值进行判断,需要用到条件结构. 变式训练设计算法,求ax+b=0的解,并画出流程图.解:对于方程ax+b=0来讲,应该分情况讨论方程的解.我们要对一次项系数a 和常数项b 的取值情况进行分类,分类如下: (1)当a≠0时,方程有唯一的实数解是ab -; (2)当a=0,b=0时,全体实数都是方程的解; (3)当a=0,b≠0时,方程无解.联想数学中的分类讨论的处理方式,可得如下算法步骤: 1.判断a≠0是否成立.若成立,输出结果“解为ab -”. 2.判断a=0,b=0是否同时成立.若成立,输出结果“解集为R ”.3.判断a=0,b≠0是否同时成立.若成立,输出结果“方程无解”,结束算法. 流程图如下:图7点评:这是选择结构叠加问题,选择结构叠加,程序执行时需依次对“条件1”“条件2”“条件3”……都进行判断,只有遇到能满足的条件才执行该条件对应的操作. 知能训练1.设计算法,找出输入的三个不相等实数a 、b 、c 中的最大值,并画出流程图. 解:算法步骤: 1.输入a ,b ,c 的值.2.判断a>b 是否成立,若成立,则执行第三步;否则执行第四步.3.判断a>c 是否成立,若成立,则输出a ,并结束;否则输出c ,并结束.4.判断b>c 是否成立,若成立,则输出b ,并结束;否则输出c ,并结束. 流程图如下:图82.“特快专递”是目前人们经常使用的异地邮寄信函或托运物品的一种快捷方式.某快递公司规定甲、乙两地之间物品的托运费用根据下列方法计算:f=⎩⎨⎧>⨯-+⨯≤.50,85.0)50(53.050,50,53.0ωωωω其中f (单位:元)为托运费,ω为托运物品的重量(单位:千克). 试画出计算费用f 的流程图.分析:这是一个实际问题,根据数学模型可知,求费用f 的计算公式随物品重量ω的变化而有所不同,因此计算时先看物品的重量,在不同的条件下,执行不同的指令,这是选择结构的运用,是二分支选择结构. 其中,物品的重量通过输入的方式给出.解:算法流程图如下图.图9拓展提升有一城市,市区为半径为15 km 的圆形区域,近郊区为距中心15—25 km 的范围内的环形地带,距中心25 km 以外的为远郊区,如图10所示.市区地价每公顷100万元,近郊区地价每公顷60万元,远郊区地价为每公顷20万元,输入某一点的坐标为(x,y),求该点的地价,并画出流程图.图10分析:由该点坐标(x ,y),求其与市中心的距离r=22y x +,确定是市区、近郊区,还是远郊区,进而确定地价p.由题意知,p=⎪⎩⎪⎨⎧>≤<≤<.25,20,2515,60,150,100r r r解:流程图如下:图11课堂小结1.理解选择结构的特点.2.能用学过的选择结构解决常见的算法问题.作业习题2—2 A组 3.设计感想本节采用引人入胜的方法引入正课,选用的例题难度适中,有的经典实用,有的新颖独特,每个例题都是很好的素材.选择结构是逻辑结构的核心,是培养学生逻辑推理的好素材,本节设计符合新课标精神,难度设计略高于教材.(设计者:刘菲)。

高中数学-2.1算法的基本思想教学设计-北师大版必修3

第二章 算法初步第一课时 2.1算法的基本思想【课程标准】通过对解决具体问题过程与步骤的分析(如二元一次方程组求解等问题),体会算法的思想,了解算法的含义.【教学目标】1.理解算法的概念与特点;2.学会用自然语言描述算法,体会算法思想;3.培养学生逻辑思维能力与表达能力.【教学重点】算法概念以及用自然语言描述算法【教学难点】用自然语言描述算法【教学过程】一、序言算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础. 在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具. 听音乐、看电影、玩游戏、打字、画卡通画、处理数据,计算机几乎渗透到了人们生活的所有领域. 那么,计算机是怎样工作的呢?要想弄清楚这个问题,算法的学习是一个开始. 同时,算法有利于发展有条理的思考与表达的能力,提高逻辑思维能力.在以前的学习中,虽然没有出现算法这个名词,但实际上在数学学习中已经渗透了大量的算法思想,如四则运算的过程、求解方程的步骤等等,完成这些工作都需要一系列程序化的步骤,这就是算法的思想.二、实例分析例1:写出你在家里烧开水过程的一个算法.解:第一步:把水注入电锅;第二步:打开电源把水烧开; 第三步:把烧开的水注入热水瓶.(以上算法是解决某一问题的程序或步骤)例2:给出求1+2+3+4+5的一个算法.解: 算法1 按照逐一相加的程序进行.第一步:计算1+2,得到3;第二步:将第一步中的运算结果3与3相加,得到6;第三步:将第二步中的运算结果6与4相加,得到10;第四步:将第三步中的运算结果10与5相加,得到15.算法2 运用公式123n ++++= 2)1(+n n 直接计算. 第一步:取n =5; 第二步:计算2)1(+n n ; 第三步:输出运算结果.算法3 用循环方法求和.第一步:使1S =,;第二步:使2I =;第三步:使S S I =+;第四步:使1I I =+; 第五步:如果5I ≤,则返回第三步,否则输出S .点评:一个问题的算法可能不唯一.例3 给出求解方程组274511x y x y +=⎧⎨+=⎩的一个算法.解:用消元法解这个方程组,步骤是: 第一步:方程①不动,将方程②中x 的系数除以方程①中x 的系数,得到乘数422m ==; 第二步:方程②减去m 乘以方程①,消去方程②中的x 项,得到2733x y y +=⎧⎨=-⎩; 第三步:将上面的方程组自下而上回代求解,得到1y =-,4x =.所以原方程组的解为41x y =⎧⎨=-⎩. 点评:通过例1再次明确算法特点:有限性和确定性例4.用二分法设计一个求解方程x 2–2=0的近似根的算法。

高中数学 第二章 算法初步 2.1 算法的基本思想教案 北师大版必修3

第二章算法初步算法是数学及其应用的重要组成部分,是计算科学的重要基础.随着现代信息技术的飞速发展,算法在科学技术、社会发展中发挥着越来越大的作用,并融入社会生活的方方面面,算法思想已经成为现代人应具备的一种数学素养.需要特别指出的是,中国古代数学中蕴涵了丰富的算法思想.在这一章中,学生将在义务教育阶段初步感受算法思想的基础上,结合对具体数学实例的分析,体验算法框图在解决问题中的作用;通过模仿、操作、探索,学习设计算法框图表达解决问题的过程;体会算法的基本思想以及算法的重要性和有效性,发展有条理的思考与表达的能力,提高逻辑思维能力.算法作为新名词,在以前的数学教科书中没有出现过,但是算法本身,同学们并不陌生.解方程的算法、解不等式的算法、因式分解的算法,都是同学们熟知的内容.只是算法的基本思想、特点,学习算法的必要性等问题没有专门涉及.因此,本章中的算法的基本思想,将针对同学们熟悉的一些问题,分析解决这些具体问题的算理,整理出相应问题的解决步骤,然后抽象概括出更具一般意义的算法.通过这个过程,让学生体会算法的程序化思想.同时,针对同样的问题,我们给出不同的算法,让同学们意识到:同一个问题可能存在着多种算法,算法之间有优劣之分.接下来,通过求方程近似解,让同学们意识到学习算法的必要性——将问题的解决过程即算法交给计算机完成,能够极大地提高效率.接下来,介绍算法的基本结构.顺序结构和选择结构是学生比较容易接受的,循环结构则比较难以理解.分析造成理解困难的原因之一是变量以及对变量的处理——赋值.在循环结构的学习中,总结了循环结构的三个要素——循环变量、循环体和循环的终止条件,并提供了可供学生模仿、操作的算法算法框图.排序算法可以说是应用最广泛的算法了,而且又易于理解,便于接受,是算法教学的良好素材.教科书选择这个问题作为专题来讨论,给学生提供了一个完整的分析、设计算法的过程,也给了学生一个应用前面所学的关于变量和结构的知识的机会.在前面的学习中,我们分别用自然语言和算法框图来描述算法,这两种方式各有优缺点.要将算法最终交给计算机执行,需要用程序语言来表述算法,程序语言有很多种,但是有一些基本语句是这些语言都要用到的:输入输出语句、赋值语句、条件语句、循环语句,在本章的最后介绍了这几种基本语句.值得注意的是:1.注重对算法基本思想的理解.算法是高中数学课程中的新内容,其思想非常重要,但并不神秘.例如,运用消元法解二元一次方程组、求最大公因数等的过程本质上就是算法.本模块中的算法内容是将数学中的算法与计算机技术建立联系,形式化地表示算法,在条件允许的学校,使其能在计算机上实现.为了有条理地、清晰地表达算法,往往需要将解决问题的过程整理成算法框图;为了能在计算机上实现,还需要将自然语言或算法框图翻译成计算机语言.本模块的主要目的是使学生体会算法的思想,提高逻辑思维能力.不要将此部分内容简单处理成程序语言的学习和程序设计.2.算法教学必须通过实例进行.使学生在解决具体问题的过程中学习一些基本逻辑结构和语句.有条件的学校,应鼓励学生上机尝试运行程序.在实例的选择中,我们要把握这样一些原则:亲和原则:选取的例子要贴近学生,或者来自学生的生活实践,或者是学生所学过的数学知识.趣味性原则:选取的实例一般要有丰富的背景,本身要有趣味性.基础性原则:问题本身的算理并不难,只要蕴涵丰富的算法思想即可.可操作性原则:所选取问题的算法一般能在计算机上实现.3.算法教学要注意循序渐进,先具体再抽象,先了解算理,再描述算法.通常,我们说一个算法越是抽象,有一般意义,应用就越广泛,越能体现算法本身的应用价值.但是,作为教学意义上的算法则不同,一定要从具体问题出发分析算法的算理及算法步骤,然后抽象概括出一般意义的算法,画出算法算法框图,并在这个过程中,学习使用变量、赋值,学习更好地表述算法,以便在计算机上操作执行.算法的教学中,变量的理解、赋值的应用、循环结构的理解是重点和难点,教师要注意分散这些难点.学生对算法思想的认识、概念的把握、知识的灵活应用及能力的形成不是一次完成的,而是要把这些作为教学目标渗透在整章的学习中.整体设计教学分析算法在中学数学课程中是一个新的概念,但其没有一个精确化的定义,教科书只对它作了如下描述:“算法是解决某一类问题的步骤和程序.”为了让学生更好地理解这一概念,教科书用5个例子来说明算法的实质.教学中,应从学生非常熟悉的例子引出算法,再通过例题加以巩固.三维目标1.正确理解算法的概念,掌握算法的基本特点.2.通过例题教学,使学生体会设计算法的基本思路.3.通过有趣的实例使学生了解算法这一概念的同时,激发学生学习数学的兴趣.重点难点教学重点:算法的含义及应用.教学难点:写出解决一类问题的算法.课时安排1课时教学过程导入新课思路 1.一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量狼就会吃掉羚羊.此人如何将动物完好地转移过河?请同学们写出解决问题的步骤,解决这一问题将要用到我们今天学习的内容——算法.思路 2.大家都看过赵本山与宋丹丹演的小品吧,宋丹丹说了一个笑话,把大象装进冰箱总共分几步?答案:分三步,第一步:把冰箱门打开;第二步:把大象装进去;第三步:把冰箱门关上.上述步骤构成了把大象装进冰箱的算法,今天我们开始学习算法的概念.思路 3.算法不仅是数学及其应用的重要组成部分,也是计算科学的重要基础.在现代社会里,计算机已成为人们日常生活和工作中不可缺少的工具.如听音乐、看电影、玩游戏、打字、画卡通画、处理数据都能通过计算机实现,计算机是怎样工作的呢?要想弄清楚这个问题,算法的学习是一个开始.推进新课新知探究提出问题1.解二元一次方程组有几种方法?2.结合实例⎩⎪⎨⎪⎧ x -2y =-1,①2x +y =1,② 总结用加减消元法解二元一次方程组的步骤.3.结合实例⎩⎪⎨⎪⎧ x -2y =-1,①2x +y =1,② 总结用代入消元法解二元一次方程组的步骤.4.请写出解一般二元一次方程组的步骤.5.根据上述实例谈谈你对算法的理解.6.请同学们总结算法的特征.7.请思考我们学习算法的意义.讨论结果:1.代入消元法和加减消元法.2.回顾二元一次方程组⎩⎪⎨⎪⎧ x -2y =-1,①2x +y =1②的求解过程,我们可以归纳出以下步骤:第一步,①+②×2,得5x =1.③第二步,解③,得x =15.第三步,②-①×2,得5y =3.④第四步,解④,得y =35.第五步,得到方程组的解为⎩⎪⎨⎪⎧ x =15,y =35.3.用代入消元法解二元一次方程组⎩⎪⎨⎪⎧ x -2y =-1,①2x +y =1,②我们可以归纳出以下步骤:第一步,由①得x =2y -1.③第二步,把③代入②,得2(2y -1)+y =1.④第三步,解④得y =35.⑤第四步,把⑤代入③,得x =2×35-1=15.第五步,得到方程组的解为⎩⎪⎨⎪⎧ x =15,y =35.4.对于一般的二元一次方程组⎩⎪⎨⎪⎧ a 1x +b 1y =c 1,a 2x +b 2y =c 2, ①②其中a 1b 2-a 2b 1≠0,可以写出类似的求解步骤:第一步,①×b 2-②×b 1,得(a 1b 2-a 2b 1)x =b 2c 1-b 1c 2.③第二步,解③,得x =b 2c 1-b 1c 2a 1b 2-a 2b 1. 第三步,②×a 1-①×a 2,得(a 1b 2-a 2b 1)y =a 1c 2-a 2c 1.④第四步,解④,得y =a 1c 2-a 2c 1a 1b 2-a 2b 1. 第五步,得到方程组的解为⎩⎪⎨⎪⎧ x =b 2c 1-b 1c 2a 1b 2-a 2b 1,y =a 1c 2-a 2c 1a 1b 2-a 2b 1.5.算法的定义:广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法,等等.在数学中,算法通常是指按照一定规则解决某一类问题的明确有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.6.算法的特征:①确定性:算法的每一步都应当做到准确无误、“不重不漏”.“不重”是指不是可有可无的,甚至无用的步骤,“不漏” 是指缺少哪一步都无法完成任务.②逻辑性:算法从开始的“第一步”直到“最后一步”之间做到环环相扣,分工明确,“前一步”是“后一步”的前提, “后一步”是“前一步”的继续.③有穷性:算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制地持续进行.7.在解决某些问题时,需要设计出一系列可操作或可计算的步骤来解决问题,这些步骤称为解决这些问题的算法.也就是说,算法实际上就是解决问题的一种程序性方法.算法一般是机械的,有时需进行大量重复的计算,它的优点是一种通法,只要按部就班地去做,总能得到结果.因此算法是计算科学的重要基础.应用示例思路11在给定素数表的条件下,设计算法,将936分解成素因数的乘积.(4 000以内的素数表见教科书附录1)分析:1.查表判断936是否为素数:(1)如果936是素数,则分解结束;(2)如果936不是素数,则进行第2步.2.确定936的最小素因数:2. 936=2×468.3.查表判断468是否为素数:(1)如果468是素数,则分解结束;(2)如果468不是素数,则重复上述步骤,确定468的最小素因数.重复进行上述步骤,直到找出936的所有素因数.解:算法步骤如下:1.判断936是否为素数:否.2.确定936的最小素因数:2. 936=2×468.3.判断468是否为素数:否.4.确定468的最小素因数:2. 936=2×2×234.5.判断234是否为素数:否.6.确定234的最小素因数:2 936=2×2×2×117.7.判断117是否为素数:否.8.确定117的最小素因数:3. 936=2×2×2×3×39.9.判断39是否为素数:否.10.确定39的最小素因数:3. 936=2×2×2×3×3×13.11.判断13是否为素数:13是素数,所以分解结束.分解结果是936=2×2×2×3×3×13.点评:以上步骤是解决素因数分解问题的一个过程,只要依照这一系列步骤,都能解决这个问题.我们把这一系列步骤称为解决这个问题的一个算法.变式训练设计一个算法,求840与1 764的最大公因数.分析:我们已经学习了对自然数进行素因数分解的方法,下面的算法就是在此基础上设计的.解答这个问题需要按以下思路进行.首先,对两个数分别进行素因数分解:840=23×3×5×7, 1 764=22×32×72.其次,确定两数的公共素因数:2,3,7.接着,确定公共素因数的指数:对于公共素因数2,22是1 764的因数,23是840的因数,因此22是这两个数的公因数,这样就确定了公共素因数2的指数为2.同样,可以确定出公因数3和7的指数均为1.这样,就确定了840与1 764的最大公因数为22×31×71=84.解:算法步骤如下:1.先将840进行素因数分解:840=23×3×5×7;2.然后将1 764进行素因数分解:1 764=22×32×72;3.确定它们的公共素因数:2,3,7;4.确定公共素因数的指数:公共素因数2,3,7的指数分别为2,1,1;5.最大公因数为22×31×71=84.例2 一位商人有9枚银元,其中有1枚略轻的是假银元.你能用天平(不用砝码)将假银元找出来吗?分析:最容易想到的解决这个问题的一种方法是:把9枚银元按顺序排成一列,先称前2枚,若不平衡,则可找出假银元;若平衡,则2枚银元都是真的,再依次与剩下的银元比较,就能找出假银元.图1解:按照下列步骤,就能将假银元找出来:1.任取2枚银元分别放在天平的两边.如果天平左右不平衡,则轻的一边就是假银元;如果天平平衡,则进行第2步.2.取下右边的银元,放在一边,然后把剩余的7枚银元依次放在右边进行称量,直到天平不平衡,偏轻的那一枚就是假银元.这种算法最少要称1次,最多要称7次.是不是还有更好的办法,使得称量次数少一些?我们可以采用下面的方法:图21.把银元分成3组,每组3枚.2.先将两组分别放在天平的两边.如果天平不平衡,那么假银元就在轻的那一组;如果天平左右平衡,则假银元就在未称的第3组里.3.取出含假银元的那一组,从中任取两枚银元放在天平的两边.如果左右不平衡,则轻的那一边就是假银元;如果天平两边平衡,则未称的那一枚就是假银元.点评:经分析发现,后一种算法只需称量2次,这种做法要明显好于前一种做法.当然,这两种方法都具有一般性,同样适用于n枚银元的情形.这是信息论中的一个模型,可以帮助我们找出某些特殊信息.从上面的问题中可以看出,同一个问题可能存在着多种算法,其中一些可能要比另一些好.在实际问题和算法理论中,找出好的算法是一项重要的工作.思路2例1 (1)设计一个算法,判断7是否为质数;(2)设计一个算法,判断35是否为质数.分析:(1)根据质数的定义,可以这样判断:依次用2~6除7,如果它们中有一个能整除7,则7不是质数,否则7是质数.解:(1)①用2除7,得到余数1.因为余数不为0,所以2不能整除7.②用3除7,得到余数1.因为余数不为0,所以3不能整除7.③用4除7,得到余数3.因为余数不为0,所以4不能整除7.④用5除7,得到余数2.因为余数不为0,所以5不能整除7.⑤用6除7,得到余数1.因为余数不为0,所以6不能整除7.因此,7是质数.(2)类似地,可写出“判断35是否为质数”的算法:①用2除35,得到余数1.因为余数不为0,所以2不能整除35.②用3除35,得到余数2.因为余数不为0,所以3不能整除35.③用4除35,得到余数3.因为余数不为0,所以4不能整除35.④用5除35,得到余数0.因为余数为0,所以5能整除35.因此,35不是质数.点评:上述算法有很大的局限性,用上述算法判断35是否为质数还可以,如果判断1 997是否为质数就比较麻烦了,因此,我们需要寻找更实用的算法步骤.变式训练请写出判断n(n>2)是否为质数的算法.分析:对于任意的整数n(n>2),若用i表示2~(n-1)中的任意整数,则“判断n是否为质数”的算法包含下面的重复操作:用i除n,得到余数r.判断余数r是否为0,若是,则不是质数;否则,将i的值增加1,再执行同样的操作.这个操作一直要进行到i的值等于(n-1)为止.解:1.给定大于2的整数n.2.令i=2.3.用i除n,得到余数r.4.判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示.5.判断“i>(n-1)”是否成立.若是,则n是质数,结束算法;否则,返回第3步.例2 写出用“二分法”求方程x2-2=0 (x>0)的近似解的算法.分析:令f(x)=x2-2,则方程x2-2=0 (x>0)的解就是函数f(x)的零点.“二分法”的基本思想是:把函数f(x)的零点所在的区间[a,b]〔满足f(a)·f(b)<0〕“一分为二”,得到[a,m]和[m,b].根据“f(a)·f(m)<0”是否成立,取出零点所在的区间[a,m]或[m,b],仍记为[a,b].对所得的区间[a,b]重复上述步骤,直到包含零点的区间[a,b]“足够小”,则[a,b]内的数可以作为方程的近似解.解:1.令f(x)=x2-2,给定精度d.2.确定区间[a,b],满足f(a)·f(b)<0.3.取区间中点m=a+b 2.4.若f(a)·f(m)<0,则含零点的区间为[a,m];否则,含零点的区间为[m,b].将新得到的含零点的区间仍记为[a,b].5.判断[a,b]的长度是否小于d或f(m)是否等于0.若是,则m是方程的近似解;否则,返回第三步.当d近似解.实际上,上述步骤也是求2的近似解的一个算法.点评:算法一般是机械的,有时需要进行大量的重复计算,只要按部就班地去做,总能算出结果,通常把算法过程称为“数学机械化”.数学机械化的最大优点是它可以借助计算机来完成,实际上处理任何问题都需要算法.如:中国象棋有中国象棋的棋谱、走法、胜负的评判准则;而国际象棋有国际象棋的棋谱、走法、胜负的评判准则;再比如申请出国有一系列的先后手续,购买物品也有相关的手续……变式训练求方程f(x)=x3+x2-1=0在区间[0,1]上的近似解,精度为0.01.解:根据上述分析,可以通过下列步骤求得方程的近似解:1.因为f(0)=-1,f(1)=1,f(0)·f(1)<0,则区间[0,1]为有解区间,精度1-0=1>0.01;2.取[0,1]的区间中点0.5;3.计算f(0.5)=-0.625;4.由于f(0.5)·f(1)<0,可得新的有解区间[0.5,1],精度1-0.5=0.5>0.01;5.取[0.5,1]的区间中点0.75;6.计算f(0.75)=-0.015 625;7.由于f(0.75)·f(1)<0,可得新的有解区间[0.75,1],精度1-0.75=0.25>0.01;……当得到新的有解区间[0.75,0.757 82]时,由于|0.757 82-0.75|=0.007 82<0.01,该区间精度已满足要求,所以取区间[0.75,0.757 82]的中点0.753 91,它是方程的一个近似解.例3 一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量狼就会吃掉羚羊.此人如何将动物转移过河?请设计算法.分析:任何动物同船不用考虑动物的争斗但需考虑承载的数量,还应考虑到两岸的动物都得保证狼的数量要小于羚羊的数量,故在算法的构造过程中应尽可能保证船里面有狼,这样才能使得两岸的羚羊数量占到优势.解:具体算法如下:算法步骤:1.人带两只狼过河,并自己返回.2.人带一只狼过河,自己返回.3.人带两只羚羊过河,并带两只狼返回.4.人带一只羚羊过河,自己返回.5.人带两只狼过河.点评:算法是解决某一类问题的精确描述,有些问题使用形式化、程序化的刻画是最恰当的.这就要求我们在写算法时应精练、简洁、清晰地表达,要善于分析任何可能出现的情况,体现思维的严密性和完整性.本题型解决问题的算法中某些步骤重复进行多次才能解决,在现实生活中,很多较复杂的问题经常遇到这样的问题,设计算法的时候,如果能够合适地利用某些步骤的重复,不但可以使问题变得简单,而且可以提高工作效率.变式训练喝一杯茶需要这样几个步骤:洗刷水壶、烧水、洗刷茶具、沏茶.如何安排这几个步骤?请给出两种算法,并加以比较.分析:本题主要为加深对算法概念的理解,可结合生活常识对问题进行分析,然后解决问题.解:算法一:1.洗刷水壶.2.烧水.3.洗刷茶具.4.沏茶.算法二:1.洗刷水壶.2.烧水,烧水的过程当中洗刷茶具.3.沏茶.上面的两种算法都符合题意,但是算法二运用了统筹方法的原理,因此这个算法要比算法一更科学.点评:解决一个问题可有多个算法,可以选择其中最优的、最简单的、步骤尽量少的算法.知能训练设计算法判断一元二次方程ax2+bx+c=0是否有实数根.解:算法步骤如下:1.输入一元二次方程的系数:a,b,c.2.计算Δ=b2-4ac的值.3.判断Δ≥0是否成立.若Δ≥0成立,输出“方程有实根”;否则输出“方程无实根”,结束算法.点评:用算法解决问题的特点是:具有很好的程序性,是一种通法,并且具有确定性、逻辑性、有穷性.拓展提升中国网通规定:拨打市内电话时,如果不超过3分钟,则收取话费0.22元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取通话费,不足一分钟按一分钟计算.设通话时间为t (分钟),通话费用为y (元),如何设计一个程序,计算通话的费用?解:算法分析:数学模型实际上为y 关于t 的分段函数.关系式如下:y =⎩⎪⎨⎪⎧ 0.22,0<t ≤3,0.22+0.1t -3,t >3,t ∈Z ,0.22+0.1[t -3]+1,t >3,t ∉Z .其中[t -3]表示取不大于t -3的整数部分.算法步骤如下:1.输入通话时间t .2.如果t ≤3,那么y = 0.22;否则判断t ∈Z 是否成立,若成立执行y = 0.2+0.1× (t -3);否则执行y = 0.2+0.1×( [t -3]+1).3.输出通话费用y .课堂小结1.正确理解算法这一概念.2.结合例题掌握算法的特点,能够写出常见问题的算法.作业课本本节练习1、练习2.设计感想本节的引入精彩独特,让学生在感兴趣的故事里进入本节的学习.算法是本章的重点也是本章的基础,是一个较难理解的概念.为了让学生正确理解这一概念,本节设置了大量学生熟悉的事例,让学生仔细体会反复训练.本节的事例有古老的经典算法,也有几何算法等,因此这是一节很好的课例.备课资料备选习题中国古代有一个著名的算法案例:鸡兔49个头,100条腿往地里走,问鸡兔各多少?请写出计算鸡兔数的算法.分析:求解鸡兔的问题简单直观,却包含着深刻的算法思想.应用解二元一次方程组的方法来求解鸡兔同笼问题.解:算法如下:1.设有鸡x 只,兔y 只,则有⎩⎪⎨⎪⎧ x +y =49,2x +4y =100.①② 2.将方程组中的第一个方程两边乘以-2加到第二个方程中去,得到⎩⎪⎨⎪⎧x +y =49,4-2y =100-49×2, 解得y =1.3.将y =1代入①,得x =48.因此鸡有48只,兔有1只.。

高中数学北师大版必修3教学案第二章 §1 算法的基本思想 Word版含解析

预习课本~,思考并完成以下问题()算法的概念是什么?()算法的特征有哪些?()设计算法需要注意哪些问题?.算法的概念可操作或在解决某些问题时,需要设计出一系列过实施这些步骤来可计算的步骤,通解决问题,通常把这些步骤称为解决这些问题的算法.这种描述不是算法的严格定义,但是反映了算法的基本思想.[点睛]算法与一般意义上数学问题的解法的联系和区别()联系:算法和解法是一般与特殊,抽象与具体的关系.例如,教材给出二分法求根的算法,根据这样的求解步骤可以求得任意方程的近似根.()区别:算法是解决一类问题的所需程序和步骤的统称,也可以理解为数学的“通法”,解法是解决一个具体问题的解题过程..算法的主要特征()有穷性:一个算法的步骤是有限的,它应在有限步操作之后停止,而不能是无限的.()确定性:算法中的每一步应该是确定的并且能有效地执行和得到确定的结果,而不应当模棱两可.()有序性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都要准确无误,才能解决问题.()不唯一性:求解某一个问题的算法不是唯一的,对于一个问题可以有不同的算法.()普遍性:很多具体的问题都可以设计合理的算法去解决..判断正误.(正确的打“√”,错误的打“×”)()算法就是某个问题的解题过程.( )()解决某一个具体问题时,算法不同,结果不同.( )()算法执行步骤的次数不可以很大,否则无法实施.( )答案:()×()×()×.下列描述不能看作算法的是( ).做米饭需要刷锅,淘米,添水,加热这些步骤.洗衣机的使用说明书.从济南到台湾旅游,先坐火车,再坐飞机.解方程+-=时需先判断判别式的符号解析:选因为、、都描述了解决问题的过程,可以看作算法,而只描述了一个事实,没说明如何解决问题,不是算法..下列关于算法的说法正确的是( ).某算法可以无止境地运算下去.一个问题的算法步骤是可逆的.完成一件事情的算法有且只有一种.算法的每一步操作都是明确的解析:选根据算法的特征进行判断.选项中,由于算法具有有穷性,因此不可以无止境地运算下去;选项中,算法中的步骤是按顺序一步步进行下去的,因此是不可逆的;选项中,由于算法具有不唯一性,因此完成一件事情的算法不是只有一种;正确,算法中的每一个步骤应当是明确无误的,不应产生歧义.错误!算法的概念.一个算法应包含有限的步骤,而不能是无限的.算法可以理解为由基本运算及规定的运算顺序构成的完整的解题步骤.算法中的每一步都应当有效地执行,并得到确定的结果.一个问题只能设计出一个算法[解析]由算法的特征可知,不正确.[答案]解答这类问题的方法为特征判断法,主要从以下三方面判断:()看是否满足顺序性.算法实际上就是顺序化的解题过程,是指可以用计算机来解决某。

北师大版高中数学必修三《算法的基本思想》教案-新版

算法的基本思想一、教学内容:新课程高中数学(北师大版)必修3第二章《算法初步》第一节:算法的基本思想。

二、教学目标:1、通过对解决具体问题过程与步骤的分析,体会算法的思想,了解算法的含义及其基本特征;2、通过分析具体问题,抽象出算法的过程,培养抽象概括能力、语言表达能力和逻辑思维能力;3、通过算法的学习,进一步让学生体验到数学与现实世界的关系、数学与计算机技术的关系、提高学生学习数学的兴趣。

三、教学重点:1、了解算法的含义及其基本特征;2、掌握算法的表示形式。

四、教学难点:算法的表示形式。

五、教学过程:(一)情景导入:在与学生的寒暄中引入今天的课题,并让学生来猜猜老师衣服的价格,提出问题:“怎样才能在有限的次数范围内猜中衣服的价格呢?”师:采用对半价格区间去猜数比较合理,在数学上我们称这种方法为“二分法”下节课我们要重点学习这种方法的应用。

师:可见我们在处理一个问题时,若是有一个好的指导思想,我们在具体行动中就不会显得很盲目,按照既定的策略,在有限的步骤内就可以达到目的。

今天我们这节课的课题就是研究有关解决问题的基本思想方法,在数学上,我们称之为“算法”。

这里的“算法”不是指狭义上的计算方法,而是广义范围内一切解决问题的思想方法。

下面我们再通过几个实例来体会一下算法的基本思想及其算法具有哪些特征。

(二)新课:师:我们先看一下书上的例子例:请设计算法,将936分解成素因素的乘积。

师:请同学们在最短的时间内分解好,提问。

生:9362223313=⨯⨯⨯⨯⨯师:请用语言描述你的思路过程。

若是学生很难用语言描述,老师要及时引导。

解:算法步骤如下:1. 判断936是否为素数:否2. 确定936的最小素因数:2. 9362468=⨯3. 判断468是否为素数:否4. 确定468的最小素因数:2. 93622234=⨯⨯5. 判断234是否为素数:否6. 确定234的最小素因数:2. 936222117=⨯⨯⨯7. 判断117是否为素数:否8. 确定234的最小素因数:3. 936222339=⨯⨯⨯⨯9. 判断39是否为素数:否10.确定234的最小素因数:3. 9362223313=⨯⨯⨯⨯⨯11. 判断13是否为素数:是素数,分解结束.师:以上就是分解素因数的一个算法,其实算法就是解决问题的一系列步骤,依照这些步骤,按部就班就可以完成任务。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.1 算法的基本思想
1.通过对解决具体问题过程与步骤的分析,体会算法的思想,了解算法的含义及其基本特征.(重点)
2.通过分析具体问题,抽象出算法的过程,培养抽象概括能力、语言表达能力和逻辑思维能力.(难点)
3.通过算法的学习,进一步让学生体验到数学与现实世界的关系、数学与计算机技术的关系,从而提高学生学习数学的兴趣.
[基础·初探]
教材整理算法
阅读教材P75~P83“练习”以上部分,完成下列问题.
1.算法的概念
算法是解决某类问题的一系列步骤或程序,只要按照这些步骤执行,都能使问题得到解决.一般来说,“用算法解决问题”都是可以利用计算机帮助完成的.
2.算法的基本思想
在解决某些问题时,需要设计出一系列可操作或可计算的步骤,通过实施这些步骤来解决问题,通常把这些步骤称为解决这些问题的算法.这种解决问题的思想方法称为算法的基本思想.
3.算法的特征
(1)确定性:算法的每一步必须是确切定义的,且无二义性,算法只有唯一的一条执行路径,对于相同的输入只能得出相同的输出.
(2)有穷性:一个算法必须在执行有穷次运算后结束.在所规定的时间和空间内,若不能获得正确结果,其算法也是不能被采用的.
(3)可行性:算法中的每一个步骤必须能用实现算法的工具——可执行指令精确表达,并在有限步骤内完成,否则这种算法也是不会被采纳的.
(4)输入:算法一定要根据输入的初始数据或给定的初值才能正确执行它的每一步骤.
(5)输出:算法一定能得到问题的解,有一个或多个结果输出,达到求解问题的目的,没有输出结果的算法是没有意义的.
(6)此外,还要求算法应具有通用性:算法应适用于某一类问题中的所有个体,而不是只能用来解决一个具体问题.
判断(正确的打“√”,错误的打“×”)
(1)求解某一类问题的算法是唯一的.( )
(2)算法执行后一定产生确定的结果.( )
(3)算法只能解决一个问题,不能重复使用.( )
(4)算法的步骤必须有限.( )
【解析】(1)×,根据算法特点知求解某一类问题的算法不唯一.
(2)√,由算法特征知算法具有确定性.
(3)×,算法能解决一类问题且能重复使用.
(4)√,由算法的有限性特征知步骤必须有限.
【答案】(1)×(2)√(3)×(4)√
[小组合作型]
下列对算法的理解不.正确的是( )
A.一个算法应包含有限的步骤,而不能是无限的
B.算法可以理解为由基本运算及规定的运算顺序构成的完整的解题步骤
C.算法中的每一步都应当有效地执行,并得到确定的结果
D.一个问题只能设计出一个算法
【精彩点拨】先正确理解算法的概念及其特点,然后逐一验证每个选项是否正确.【自主解答】
解答这类问题的方法为特征判断法,主要从以下三方面判断:
1 看是否满足顺序性.算法实际上就是顺序化的解题过程,是指可以用计算机来解决某一问题的程序或步骤.
2 看是否满足明确性.算法的每一步都是确定的,而不是含糊的、模棱两可的.
3 看是否满足有限性.一个算法必须在有限步后结束.如果一个解题步骤永远不能结束,那么就永远得不到答案.因此,有始无终的解题步骤不是算法.,此外,算法的不唯一性也要考虑到.
[再练一题]
1.下列语句中是算法的有( )
①做饭需要刷锅、淘米、加水、加热这些步骤;
②解一元一次方程的步骤是去分母、去括号、移项、合并同类项、系数化为1;
③方程x2-1=0有两个实根;
④求1+2+3+4的值,先计算1+2=3,再由3+3=6,6+4=10得最终结果是10.
A.1个B.2个
C.3个D.4个
【解析】①说明了做饭的步骤;②中给出了一元一次方程这一类问题的解决方式;④中给出了求1+2+3+4的一个过程,最终得出结果;对于③,并没有说明如何去算,故①②④是算法,③不是算法.
【答案】 C
写出解方程x2-2x-3=0的一个算法.
【精彩点拨】本题是一个求一元二次方程的解的问题,方法很多,可用配
方法,也可用判别式法.
【自主解答】法一:算法步骤如下:
1.移项得x2-2x=3. ①
2.①两边同加1并配方得(x-1)2=4. ②
3.②两边开方得x-1=±2.③
4.解③得x=3或x=-1.
法二:1.计算方程的判别式并判断其符号:
Δ=22+4×3=16>0;
2.将a =1,b =-2,c =-3代入求根公式x =-b ±b 2
-4ac
2a
,得x 1=3,x 2=-1.
设计一个具体问题的算法,通常按以下步骤: 1 认真分析问题,找出解决此题的一般数学方法; 2 借助有关变量或参数对算法加以表述; 3 将解决问题的过程划分为若干步骤; 4 用简练的语言将这个步骤表示出来.
[再练一题]
2.写出求方程组⎩⎪⎨


3x -2y =14, ①x +y =-2 ②
的解的算法.
【解】 法一:1.②×2+①,得到5x =14-4. ③ 2.解方程③,可得x =2. ④ 3.将④代入②,可得2+y =-2. ⑤
4.解⑤得y =-4.
5.得到方程组的解为⎩
⎪⎨
⎪⎧ x =2,
y =-4.
法二:1.由②式移项可以得到x =-2-y . ③ 2.把③代入①,得y =-4. ④
3.把④代入③,得x =2.
4.得到方程组的解为⎩
⎪⎨
⎪⎧
x =2,
y =-4.
[探究共研型]
探究1 【提示】 是,因为算法的步骤是明确的和有限的.有时可能需要大量重复的计算,但只要按部就班的去做,总能得到确定的结果.
探究2 做任何一件事情都得有算法吗?
【提示】 不一定,做任何一件事不一定均有结果,而算法要求必须有结果. 探究3 算法与解法的区别与关系.
【提示】 (1)区别⎩⎪⎨⎪⎧
解法:解决某一个问题的一种方法,有局限性.
算法:解决某一类问题的步骤,有普
遍性.
(2)关系:一般与特殊,抽象与具体.
各种比赛在计算选手最后得分时,要去掉所有评委对该选手所打分数中的最高
分和最低分,试设计一个找出最高分的算法.
【精彩点拨】 对非数值型计算问题的算法要明确过程和限制条件,建立过程模型,通过模型进行算法设计.
【自主解答】 算法如下: 1.先假定第一个为“最高分”;
2.将第二个分数与“最高分”比较,如果它比“最高分”还高,就假定这个分数为“最高分”;否则“最高分”不变;
3.如果还有其他分数,重复第二步;
4.一直到没有可比的分数为止,这时假定的“最高分”就是所有评委打分中的最高分.
非数值型计算问题,如:排序、查找、变量变换、文字处理等需先建立过程模型,通过模型进行算法设计与描述.设计具体数学问题的算法,实际上就是寻求一类问题的算法,它可以通过计算机来完成
.
[再练一题]
3.在解放战争中,有一名战士接到命令,要求在最短的时间内配制出三副炸药,但是由于条件艰苦,称量物品的天平只剩下50 g 和5 g 两个砝码.现有465 g 硫黄,要平均分成三份,如何设计算法才能使称量的次数最少?需称量多少次?
【解】 算法如下:
1.计算出465 g 硫黄分成三等份,每份应为155 g. 2.用5 g 砝码称出5 g 硫黄. 3.用50 g 砝码称出50 g 硫黄.
4.用50 g 砝码和50 g 硫黄共同称出100 g 硫黄.
5.把5 g,50 g,100 g 硫黄混合,构成155 g 硫黄,也就是一份硫黄. 6.用这一份硫黄再称出155 g 硫黄,余下的作为一份. 由上述方法可以看出,这样的操作共需要称量4次.
1.下列说法正确的是( )
A.算法就是某个问题的解题过程
B.算法执行后可以产生不同的结论
C.解决某一个具体问题,算法不同所得的结果不同
D.算法执行步骤的次数不可以很大,否则无法实施
【解析】如判断一个整数是否为偶数,结果为“是偶数”和“不是偶数”两种,所以B对.而A项算法不等同于解法,故不正确.C项,解决某一个具体问题,算法不同所得的结果应该相同,否则算法不正确.D项,算法可以为很多次,但不可以为无限次.【答案】 B
2.下列四种自然语言叙述中,能称作算法的是( )
A.在家里一般是妈妈做饭
B.在野外做饭叫野炊
C.研究函数奇偶性可以按“判断定义域是否关于原点对称,考查f(x)与f(-x)满足的关系”的程序进行
D.做饭必须要有米
【解析】只有C项能按一定的程序或步骤完成.
【答案】 C
3.小明中午放学回家自己煮面条吃,有下面几道工序:①洗锅盛水2分钟;②洗菜6分钟;③准备面条及佐料2分钟;④用锅把水烧开10分钟;⑤煮面条和菜共3分钟.以上各道工序,除了④之外,一次只能进行一道工序.小明要将面条煮好,最少要用( ) A.13分钟B.14分钟
C.15分钟D.23分钟
【解析】做④的同时可以做②③,故共可用时2+10+3=15分钟.
【答案】 C
4.有以下六个步骤:
①拨号;②等拨号音;③提起话筒(或免提功能);④开始通话或挂机(线路不通);⑤等复话方信号;⑥结束通话.试写出打一个本地电话的算法________.(写序号) 【解析】按照拨打电话的顺序设计,同时考虑所有可能的情况.
【答案】③②①⑤④⑥
5.已知一个学生的语文成绩为89分,数学成绩为96分,外语成绩为99分,求他的总分S和平均成绩x的一个算法为:
1.取A=89,B=96,C=99;
2.________;
3.________;
4.输出计算的结果.
【解析】由题意知,先算S=A+B+C,接着计算x=S÷3.【答案】计算S=A+B+C 计算x=S÷3。

相关文档
最新文档