您好,欢迎访问三七文档
第一章算法初步1.1算法与程序框图1.1.1算法的概念[目标导航]课标要求1.理解算法的含义和特征.2.能用自然语言描述解决具体问题的算法.素养达成通过解决具体问题的过程和步骤体会算法的基本思想和在现代社会中的广泛应用.新知导学·素养养成1.算法的概念在数学中,算法通常是指按照一定的规则解决某一类问题的和的步骤.明确有限思考1:算法是否就是数学中的运算?答案:不一定.数学中的运算不是算法,算法指的是按照一定的规则解决一类问题的明确的和有限的步骤.2.算法与计算机计算机解决任何问题都要依赖于,只有将解决问题的过程分解为若干个的步骤,即,并用计算机能够接受的准确地描述出来,计算机才能够解决问题.算法明确算法“语言”思考2:是否任何问题都可以使用计算机完成?答案:凡是能够把解决过程分解为若干个明确的步骤的问题都可以使用计算机完成,否则不能使用计算机完成.思考3:如何设计一个利用计算机求当x取任何值时函数f(x)=x2-x+2的值的算法?试写出算法步骤.答案:第一步,输入x.第二步,计算f(x)=x2-x+2.第三步,输出f(x).名师点津(1)算法的特征:确定性算法中的每一步应该是确定的,并且能有效地执行且得到确定的结果,而不应当是模棱两可的正确性和顺序性算法从初始步骤开始,分为若干明确的步骤,上一步是下一步的前提,只有执行完上一步,才能执行下一步有限性一个算法必须在执行完有限步之后结束,而不能是无限的不唯一性求解某个问题的算法不一定是唯一的,一个问题可以有不同的算法普遍性很多具体的问题都可以设计合理的算法去解决,写出的算法必须能解决一类问题(2)算法设计的要求①设计的算法要适用于一类问题,并且遇到类似问题能够重复使用;②算法过程要做到能一步一步地执行,每一步执行的操作,必须是明确有效的,不能含糊不清;③所设计的算法必须在有限步后得到问题的结果,不能无限进行下去;④设计的算法的步骤应当是最简练的,即最优算法.(3)算法与数学中的解法的联系和区别①联系:算法与解法是一般与特殊的关系,也是抽象与具体的关系,算法的获取要借助一般意义上具体问题的求解方法,而任何一个具体问题都可利用这类问题的一般方法解决.②区别:算法是解决某些问题所需要的程序和步骤的统称,也可以理解为数学中的“通法通解”;而解法是解决某一个具体问题的过程和步骤,是具体的解题过程.课堂探究·素养提升题型一算法的概念[例1](1)下列关于算法的描述正确的是()(A)算法与求解一个问题的方法相同(B)算法只能解决一个问题,不能重复使用(C)算法过程要一步一步执行(D)有的算法执行完以后,可能没有结果解析:(1)算法与求解一个问题的方法既有区别又有联系,A不对;算法能够重复使用,B不对;每一个算法执行完以后,必须有结果,D不对;C正确.故选C.(2)计算下列各式中的S值,能设计算法求解的是()①S=2+4+6+…+1000;②S=2+4+6+…+1000+…;③S=2+4+6+…+2n(n≥1,n∈N).(A)①②(B)①③(C)②③(D)①②③解析:(2)由算法的有限性知②不正确,而①③都可通过有限的步骤操作,输出确定结果,故选B.方法技巧(1)算法实际上是解决问题的一种程序性方法,它通常解决某一个或一类问题;(2)判断一个问题是否有算法,关键看是否有解决某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.即时训练1-1:下列叙述不能称为算法的是()(A)从北京到上海先乘汽车到飞机场,再乘飞机到上海(B)解方程4x+1=0的过程是先移项再把x的系数化成1(C)利用公式S=πr2计算半径为2的圆的面积得π×22(D)解方程x2-2x+1=0解析:选项A,B给出了解决问题的方法和步骤,是算法;选项C是利用公式计算也属于算法;选项D只提出问题没有给出解决的方法,不是算法.故选D.题型二算法的设计[例2]设计计算f(x)=220,20xxxx的函数值的算法.解:算法分析:对于给定的自变量x,如果x≥0,则f(x)=x+2,否则f(x)=x2+2,也就是说第一步给出x,第二步判断x≥0,若是则f(x)=x+2,否则进行第三步f(x)=x2+2.算法:第一步,给出x;第二步:x≥0,则f(x)=x+2,否则,进行第三步;第三步:f(x)=x2+2.方法技巧算法分析需要数学其他方面的知识作基础,在做算法分析时一定要把所要解决的问题各个步骤之间的顺序弄清楚,这样才能清晰地知道按照几个步骤解决问题,写出算法.即时训练2-1:已知直角坐标系中的两点A(1,1),B(2,4),写出求直线AB所在直线方程的一个算法.解:算法分析:先求直线的斜率,再根据点斜式写出直线方程,然后化为一般方程.算法:第一步计算斜率kAB=4121=3;第二步用点斜式写出直线方程y-1=3(x-1);第三步化简得方程3x-y-2=0.解:算法分析:解决函数实际应用问题,一般过程是分析问题的实际意义,把问题中变量用字母表示,建立变量之间的函数关系式,根据问题的需要求解函数,再根据求解结果对实际问题作出解释,给出问题的结论.这个过程可以用算法表示如下.算法:第一步,读题、弄清楚问题的意义;第二步:设出变量,建立变量间的函数关系(建模);第三步:求解函数(解模);第四步:根据求解结果对实际问题作出解释.[备用例1]设计解决函数实际应用问题过程的算法.解:算法分析:任何动物同船不用考虑动物的争斗但需考虑承载的数量,还应考虑到两岸的动物都得保证狼的数量要小于羚羊的数量,故在算法的构造过程中尽可能保证船里面有狼,这样才能使得两岸的羚羊数量占到优势,具体算法如下:算法步骤:第一步,人带两只狼过河,并自己返回.第二步,人带一只狼过河,自己返回.第三步,人带两只羚羊过河,并带两只狼返回.第四步,人带一只羚羊过河,自己返回.第五步,人带两只狼过河.题型三算法的应用[例3]一个人带着三只狼和三只羚羊过河,只有一条船,船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量就会吃羚羊.该人如何将动物转移过河?请设计算法.方法技巧算法是解决某一类问题的精确描述,有些问题使用形式化、程序化的刻画是最恰当的.这就要求我们在写算法时应精练、简练、清晰地表达,要善于分析任何可能出现的情况,体现思维的严密性和完整性.本题型解决问题的算法中某些步骤重复进行多次才能解决,在现实生活中,很多较复杂的问题经常遇到这样的问题,设计算法的时候,如果能够合适地利用某些步骤的重复,不但可以使得问题变得简单,而且可以提高工作效率.即时训练3-1:两个大人和两个小孩一起渡河,渡口只有一条小船,每次只能渡1个大人或两个小孩,他们四人都会划船,但都不会游泳.同学们现在想一想,他们怎样渡过河去?请写一写你渡河的算法.解:算法分析:因为一次只能渡过一个大人,而船还要回来渡其他人,所以只能让两个小孩先过河.算法步骤:第一步,两个小孩同船渡过河去.第二步,一个小孩划船回来.第三步,一个大人独自划船渡过河去.第四步,对岸的小孩划船回来.第五步,两个小孩再同船渡过河去.第六步,一个小孩划船回来.第七步,余下的一个大人独自划船渡过河去.第八步,对岸的小孩划船回来.第九步,两个小孩再同船渡过河去.[备用例2]写出求方程组1112220,0AxByCAxByC①②(A1B2-B1A2≠0)的解的算法.解:第一步:②×A1-①×A2,(A1B2-A2B1)y+A1C2-A2C1=0;③第二步:解③,得y=21121221ACACABAB;第三步:将y=21121221ACACABAB代入①,得x=21121221BCBCABAB.课堂达标解析:算法也可用图形表示,也可以用自然语言描述,A,B错;同一问题可以有不同算法,但结果相同,C正确,D错,故选C.1.下面对算法描述正确的一项是()(A)算法只能用自然语言来描述(B)算法只能用图形方式来表示(C)同一问题可以有不同的算法(D)同一问题的算法不同,结果必然不同C2.下面哪个不是算法的特征()(A)抽象性(B)精确性(C)有穷性(D)唯一性解析:算法不是唯一的.故选D.D3.写出求1+2+3+4+5+6+…+100的一个算法.可运用公式1+2+3+…+n=12nn直接计算.第一步①;第二步②;第三步输出计算的结果.答案:①取n=100;②计算S=12nn
本文标题:2019-2020学年高中数学 第一章 算法初步 1.1.1 算法的概念课件 新人教A版必修3
链接地址:https://www.777doc.com/doc-8285862 .html