高中数学《算法的基本思想》导学案

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

[航向标·学习目标]

1.理解算法的概念与特点.

2.学会用自然语言描述算法.

3.通过解决具体问题的实例感受理解算法的特点,体会算法的基本思想,学会借助已有数学问题的解决方法和步骤设计算法.

[读教材·自主学习]

1.算法的概念:算法是指按照一定规则解决某一类问题的明确的过程和有限01步骤,算法具有如下特点:

的□

(1)□02明确性:即每一个算法都有明确的目的.

(2)□03有效性:即我们所设计的算法必须是有效的,并在有限步的操作后解决问题.

(3)□04逻辑性:即我们设计的算法要符合逻辑规律,能从头到尾运行下去.

(4)□05普遍性:我们所设计的算法必须能够解决一类问题,而不是某一个问题.

(5)□06不唯一性:算法不是唯一的,可有另外不同的设计方法.

2.排序:为了便于查询和检索,我们常常根据某种要求把被查询的对象用数

07排列,是信息处理中一项基本的工作,字(或者符号)表示出来,并把数字按大小□

通常称为排序.

3.有序列:按□08顺序排列的数据列为有序列.

[看名师·疑难剖析]

1.对算法含义的理解

(1)算法是机械的

算法的设计要“面面俱到”不能省略任何一个小小的步骤,有时可能要进行大量重复计算,但只要按步骤一步一步地执行,总能得到结果.算法的这种机械化的特点,在设计出算法后,便于把具体过程交给计算机去完成.

(2)算法是普遍存在的

实际上处理任何问题都需要算法,如国际象棋的棋谱、走法、胜负的评判标准,邮寄物品的相关手续,求一个二元一次方程组的解等等.

(3)求解某个具体问题的算法一般是不唯一的

算法实际上是解决问题的步骤和方法,求解问题的出发点不同,就会得到不同的算法.如求二元一次方程组的解有代入消元法和加减消元法,但不同的算法可能会有“优劣”之分.

2.算法与数学问题解法的区别与联系

(1)联系

算法与解法是一般与特殊的关系,也是抽象与具体的关系.如,由具体的二元一次方程组的求解过程(解法)出发,归纳出了二元一次方程组求解的步骤;同时指出,这样的求解步骤也适合有限制条件的二元一次方程组,这些步骤就构成了二元一次方程组的算法.算法的获得要借助一般意义上具体问题的求解方法,而任何一个具体问题都可利用这类问题的一般算法解决.

(2)区别

算法是解决某一类问题所需要的程序和步骤的统称,也可理解为数学中的“通法通解”;而解法是解决某一个具体问题的过程和步骤,是具体的解题过程.

考点一算法的概念

例1下列关于算法的描述正确的是()

A.算法与求解一个问题的方法相同

B.算法只能解决一个问题,不能重复使用

C.算法过程要一步一步执行,每步执行的操作必须确切

D.有的算法执行完后,可能无结果

[分析]由题目可获取以下主要信息:

①给出的四个选项均与算法含义和特点有关;

②对各选项要做正误判断.

解答本题要先弄清楚算法的含义和特点,然后逐一判定选项命题的真假即可.[解析]算法与求解一个问题的方法既有区别又有联系,故A不对;算法能重复使用,故B不对;每个算法执行后必须有结果,故D不对;由算法的有序性和确定性可知C正确.

[答案] C

类题通法

算法实际上是解决问题的一种程序性方法,它通常指向某一个或一类问题,

而解决的过程是程序性和构造性的.算法也可以看成解决问题的特殊的、有效的方法.

[变式训练1] 下列关于算法的说法,正确的有( ) ①求解某一类问题的算法是唯一的; ②算法必须在有限步操作之后停止;

③算法的每一步操作必须是明确的,不能有歧义和模糊; ④算法执行后一定产生确定的结果. A .1个 B .2个 C .3个 D .4个 答案 C

解析 本题是在熟练掌握算法概念的基础上的一个跃升,即对算法概念进行进一步的挖掘,理解其内涵.从而借助概念分析、解决问题.由于算法具有有穷性、确定性和可执行性,因而②③④正确.解决问题的算法不一定是唯一的,从而①错,故选C.

考点二 数值计算问题的算法设计 例2 写出一个算法,求二元一次方程组 ⎩⎨⎧

a 1x +

b 1y =

c 1, ①a 2x +b 2y =c 2

'②的解. [分析] 联系该方程组的实际解法过程,但要注意对待定系数的分类讨论. 因为是二元一次方程组,所以a 1、a 2不能同时为0,b 1,b 2也不能同时为0. [解] 算法如下:1.若a 1≠0,

由①×⎝ ⎛⎭⎪⎫-a 2a 1+②,得到⎝ ⎛

⎭⎪⎫b 2-a 2b 1a 1y =c 2-a 2c 1a 1.即方程组化为⎩⎪⎨⎪⎧

a 1x +

b 1y =

c 1,①

(a 1b 2-a 2b 1)y =a 1c 2-a 2c 1.③

2.若a 1b 2-a 2b 2≠0,解③得y =

a 1c 2-a 2c 1

a 1

b 2-a 2b 1

.④

3.将④代入①,整理得x =

b 2

c 1-b 1c 2

a 1

b 2-a 2b 1

.

4.输出结果x,y.

5.如果a1b2-a2b1=0,从③可以看出,方程组无解或有无穷多组解.

6.如果a1=0,则b1≠0,所以y=c1

b1.⑤

7.将⑤代入②,得x=b1c2-b2c1

a2b1.

8.输出结果x,y.

类题通法

对于设计数值计算问题的算法,可以借助数学的常规解法或数学公式,将过程分解成清晰的步骤,使之条理化,但应注意多个数进行四则运算时应分步计算,依次进行,直到算出结果.本题中,把解方程组的过程转化为算法的步骤,应用了数学的转化思想.

[变式训练2]写出解方程x2-2x-3=0的一个算法.

解解法一:第一步,移项,得x2-2x=3.①

第二步,①两边同加1并配方,得(x-1)2=4.②

第三步,②式两边开方,得x-1=±2.③

第四步,解③,得x=3或x=-1.

解法二:第一步,计算方程的判别式并判断其符号:Δ=22+4×3=16>0.

第二步,将a=1,b=-2,c=-3代入求根公式x=-b±b2-4ac

2a

,得x1

=3,x2=-1.

考点三判断性问题的算法设计

例3设计一个算法,判断7是否为质数.

[分析]只能被1和自身整除的大于1的整数叫质数.因而要判断一个数是否为质数,只需用比这个数小的任一个大于1的整数来除该数,然后利用余数是否为0来判断.

[解]算法步骤如下:

(1)用2除7,得到余数1.因为余数不为0,所以2不能整除7.

相关文档
最新文档