9512.net
甜梦文库
当前位置:首页 >> 数学 >>

算法初步学案



静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

高一数学必修 3 导学案
§1.1.1
新知探究 探究:算法的概念 问题:解二元一次方程组

算法的概念

? x ? 2 y ? ?1 ? ?2 x ? y ? 1

,参照教材第

2 页用加减消元法写出它

的求解过程. 解:第一步: ;第二步: ; 第三步: ;第四步:_______________________________; 第五步:_______________________________。 思考:试写出求方程 组 ?

?a1 x ? b1 y ? c1 ?a2 x ? b2 y ? c2

?a1b2 ? a2b1 ? 0? 的求解步骤.

解:第一步: ; 第二步: ; 第三步: ; 第四步:_______________________________ ; 第五步:_______________________________ 。 新知:算法概念: 在数学上,现代意义上的“算法”通常是指可以用计算机来解决某一类问题的程序或步骤, 这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成. 算法的特点: (1)有限性:一个算法的步骤序列是有限的. (2)确定性:算法中的每一步应该是确定的. (3)顺序性:算法分为若干有序的步骤,按顺序运行. (4)不唯一性:求解某一个问题的解法不一定是唯一的,对于一个问题可以有不同的算法. (5)普遍性:很多具体的问题,都可以设计合理的算法去解 决,如心算、计算器计算都要经 过有限、事先设计好的步骤加以解决. 典型例题 例 1.设计一个算法,判断 7 是否为质数。

例 2.写出用二分法求方程 x ? 2 ? 0 (x>0)的近似解的算法.
2

静宁一中高一级数学必修三导学案完成于 2014 年夏季

-1-

静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

例 3.你能写出“判断整数 n(n>2)是否为质数”的算法吗?

§1.1.2 程序框图与算法的基本逻辑结构(1)
新知探究 探究 1:程序框图的定义 新知 1;程序框图又称 形. 探究 2:程序框图的基本符号及功能 问题:说出终端框(起止框)、输入、输出框、处理框(执行框)、判断框、流程线、连接点的 图形符号与功能。 新知 2:程序框图的基本符号及功能表。 是一种用 、 及 来表示算法的图

概念说明: (1)起止框: 起止框是任何流程图都不可缺少的,它表明程序的开始和结束,所以 一个完整的流程图的首末两端必须是起止框. (2)输入、输出框: 表示数据的输入或结果的输出,它可用在算法中的任何需要输 入、输出的位置.
静宁一中高一级数学必修三导学案完成于 2014 年夏季 -2-

静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

(3)处理框: 它是采用来赋值、执行计算语句、传送运算结果的图形符号. (4)判断框: 判断框一般有一个入口和两个出口,有时也有多个出口,它是惟一的 具有两个或两个以上出口的符号, 在只有两个出口的情形中, 通常都分成“是”与“否” (也 可用“Y”与“N”)两个分支. 探究 3:算法的基本逻辑结构 问题:算法有很清晰的逻辑结构,阅读教材第 7 页图 1.1-2 的程序框图,你能说出他含有哪 三种逻辑结构吗? 新知 3;算法的三种基本逻辑结构: 、 、 . 探究 4:顺序结构特征及框图画法 问题:你能说出顺序结构的特点吗? 新知 4:顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序 进行的, 它是由 组成的, 它是任何一个算法都离不开的基 本结构. 顺序结构可以用程序框图表示为:

步骤 n

步骤 n+1

顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。 如在示意图中,步骤 n 和步骤 n+1 是依次执行的,只有在执行完步骤 n 指定的操作后,才能接着执 行步骤 n+1 所指定的操作. 典型例题 例 1 已知一个三角形三条边的边长分别为 a 、 b 、 c ,利用海伦—秦九韶公式设计一个计算三角形 面积的算法,并画出程序框图表示.

静宁一中高一级数学必修三导学案完成于 2014 年夏季

-3-

静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

例 2.见模块测评 P5 类型二例 2.

例 3. 见模块测评 P5 类型三例 3.

§1.1.2 程序框图与算法的基本逻辑结构(2)
新知探究 探究 1:条件结构 问题: 如何判断某个年份是否为闰年?写出该问题的算法步骤。 这个算法靠单一的顺序结构 还能完成吗? 新知 1:一些简单的算法可以用顺序结构来表示,但是这种结构无法对描述对象进行逻辑判 断,并根据判断结果进行不同的处理.因此,需要有另一种逻辑结构来处理这类问题,这种 结 构 叫 做 条 件 结 构 . 它 是 . 思考:条件结构的框图如何画呢? 结论:常见的条件结构可以用程序框图表示为下面两种形式:

否 满足条件? 是
步骤 A 步骤 B

否 满足条件? 是
步骤 A

探究 2:循环结构 新知 2:在一些算法中,经常会出现从某处开始,按照一定的条件 某些步骤的 情况,这就是循环结构, 称为循环体。显然,循环结构中一定包 含 。 循环结构可细分为两类:
静宁一中高一级数学必修三导学案完成于 2014 年夏季 -4-

静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

( 1 )直到型循环结构的特征:在执行了一次循环后,对条件进行判断,如果条件不满 足, ,直到条件满足时终止循环。在下面画出框图模型:

(2)当型循环结构的特征:在每次执行循环体前,对条件进行判断,当条件满足 时, ,否则 。在下面画出框图模型:

典型例题 例 1 任意给定 3 个正实数,设计一个算法,判断以这 3 个正实数为三条边边长的三角形是 否存在,并画出这个算法的程序框图.

例 2. 设计一个计算 1+2+---+100 的值的算法,并画出程序框图。(要求用循环结构)

例 3.见模块测评 P8 类型二例 2.

静宁一中高一级数学必修三导学案完成于 2014 年夏季

-5-

静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

例 4.见模块测评 P11 类型一例 1.

§1.1.2 程序框图与算法的基本逻辑结构(3)
新知探究 探究 1:多重条件结构的程序框图 问题 1:解关于 x 的方程 ax+b=0 的算法步骤如何设计? 分析: 第一步,输入实数 a,b. 第二步, .若是,执行第三步;否则,计算 算法. 第 三 步 , 判 断 b 是 否 为 0. 若 是 , 则 输 出 “ “ ”. 问题 2:该算法的程序框图如何表示?
开始

,并输出 x,结束 ”;否则,输出

输入a,b a=0? 否
b x = a



b=0?



是 输出“ 方程的解为 任意实数”

输出“方程无实 数根”

输出x 结束

探究 2:混合逻辑结构的程序框图 问题 3:用“二分法”求方程 x ? 2 ? 0( x ? 0) 的近似解的算法如何设计?
2

第一步,令 f(x)=x -2,给定精确度 d. 第二步,确定区间[a,b],满足 f(a)·f(b)<0. 第三步,取区间中点 m. 第四步,若 f(a)·f(m)<0,则含零点的区间为[a,m];否则,含零点的区间为[m,b].将新 得到的含零点的区间仍记为[a,b]. 第五步,判断[a,b]的长度是否小于 d 或 f(m)是否等于 0.若是,则 m 是方程的近似解;否 则,返回第三步. 问题 4:该算法中哪几个步骤可以用顺序结构来表示?这个顺序结构的程序框图如何? 问题 5:该算法中第四步是什么逻辑结构?这个步骤用程序框图如何表示? 问题 6:该算法中哪几个步骤构成循环结构?这个循环结构用程序框图如何表示? 问题 7:根据上述分析,你能画出表示整个算法的程序框图吗?(见教科书 18 页.)
静宁一中高一级数学必修三导学案完成于 2014 年夏季 -6-

2

静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

探究 3:程序框图的阅读与理解 考察下列程序框图:
开始 n=1 S=0 n=n+1 S=S-n×n 是 n≤100? 否 输出S 结束 是 n是偶数? 否 S=S+n×n

问题 8:怎样理解该程序框图中包含的逻辑结构?

问题 9:该程序框图中的循环结构属于那种类型?

问题 10:该程序框图反映的实际问题是什么?

典型例题 例 1 某工厂 2010 年的年生产总值为 200 万元, 技术革新后预计以后每年的生产总值都比上 一年增长 5%,设计一个程序框图,输出预计年生产总值超过 300 万元的最早年份。

例 2 设计并画出判断一个大于 2 的正整数是否为质数的程序框图.

静宁一中高一级数学必修三导学案完成于 2014 年夏季

-7-

静 宁 一 中 高 一 数 学 必 修 3导 学 案

版权所有,翻录必究

例 3.画出求三个不同实数中的最大值的程序框图.

§1.2.1 输入语句、输出语句 和赋值语句
新知探究 探究 1:算法语句 问题: 计算机完成任何一项任务都需要算法, 但是, 我们用自然语言或程序框图描述的算法, 计算机是无法“看得懂, 听得见”的。 因此还需要将算法用计算机能够理解的程序设计语言 (programming language) 翻译成计算机程序。 程序设计语言有很多种。 如 BASIC, Foxbase, C 语言,C++,J++,VB 等。 新知 1:为了实现算法中的三种基本的逻辑结构:顺序结构、条件结构和循环结构,各种程 序设计语言中都包含下列基本的算法语句:

探究 2:输入语句、输出语句和赋值语句 问题:用描点法作函数 y ? x ? 3x ? 24 x ? 30 的图象时,需要求出自变量与函数的一组对
3 2

应值。你能写出算法步骤