4.程序框图的画法


1.1.2

程序框图与算法 的基本逻辑结构

第三课时

问题提出

1.算法的基本逻辑结构有哪几种? 用程序框图分别如何表示?
步骤n

顺序结构
步骤n+1

条件结构
否 否

满足条件?

满足条件?


步骤A 步骤B


步骤A

(1)

(2)

循环结构
循环体
循环体 满足条件?



满足条件?







直到型

当型

2.在学习上,我们要求对实际问题 能用自然语言设计一个算法,再根据算 法的逻辑结构画出程序框图,同时,还 要能够正确阅读、理解程序框图所描述 的算法的含义,这需要我们对程序框图 的画法有进一步的理解和认识.

知识探究(一):多重条件结构的程序框图

思考1:解关于x的方程ax+b=0的算法步骤 如何设计? 第一步,输入实数a,b.

第二步,判断a是否为0.若是,执行第三 b 步;否则,计算 x = - ,并输出x,结束 a 算法.
第三步,判断b是否为0.若是,则输出 “方程的解为任意实数”;否则,输出 “方程无实数解”.

思考2:该算法的程序框图如何表示?
开始

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



b=0? 是



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

输出“方程无 实数根”

输出x 结束

思考3:你能画出求分段函数
ì ? x + 2, x > 1 ? ? ? y = í 3x - 1, 0 #x ? ? ? 1 - x, x < 0 ? ? ? 1

的值的程序框图吗?

开始
思考3:你能画出求分段函数

输入x x>1?


ì ? x + 2, x > 1 ? ? ? y = í 3x - 1, 0 #x ? ? ? 1 - x, x < 0 ? ? ?
的值的程序框图吗?

1



x≥0?




y=x+2

y=3x-1

y=1-x

输出y
结束

知识探究(二):混合逻辑结构的程序框图 2 思考1:用“二分法”求方程 x ? 2 ? 0( x ? 0) 的 近似解的算法如何设计?
第一步,令f(x)=x2-2,给定精确度d. 第二步,确定区间[a,b],满足f(a)·f(b)<0.
第三步,取区间中点 m ? a ? b . 第四步,若f(a)·f(m)<0,则含零点的区间为[a, m];否则,含零点的区间为[m,b].将新得到的含 零点的区间仍记为[a,b]. 第五步,判断[a,b]的长度是否小于d或f(m)是否 等于0.若是,则m是方程的近似解;否则,返回第 三步.
2

思考2:该算法中哪几个步骤可以用顺序 结构来表示?这个顺序结构的程序框图 如何?
f(x)=x2-2 输入精确度d 和初始值a,b
a?b m? 2

思考3:该算法中第四步是什么逻辑结构? 这个步骤用程序框图如何表示?



f(a)f(m)<0? 是

a=m

b=m

思考4:该算法中哪几个步骤构成循环结 构?这个循环结构用程序框图如何表示?
第三步

第四步


|a-b|<d 或 f(m)=0? 是 输出m

思考5:根据上述分析,你能画出表示整个算 开始 法的程序框图吗?
f(x)=x2-2
输入精确度d 和初始值a,b
m = a + b 2

否 a=m

f(a)f(m)<0? ? 是 b=m 否

|a-b|<d或f(m)=0? 是 输出m
结束

知识探究(三):程序框图的阅读与理解

考察下列程序框图:
开始 n=1

S=0
n=n+1 S=S-n×n S=S+n×n 否


n≤100? 否 输出S 结束 是 n是偶数?

思考1:怎样理解该程序框图中包含的逻 辑结构? 开始
n=1 S=0 n=n+1 S=S-n×n 是 S=S+n×n 否

n≤100? 否 输出S 结束



n是偶数?

思考2:该程序框图中的循环结构属于那 种类型? 开始
n=1 S=0 n=n+1 S=S-n×n 是 S=S+n×n 否

n≤100? 否 输出S 结束



n是偶数?

思考3:该程序框图反映的实际问题是什 开始 么?
n=1 S=0 n=n+1

S=S-n×n
是 n≤100? 否 输出S 结束 是

S=S+n×n 否

n是偶数?

求12-22+32-42+?+992-1002 的值.

理论迁移 例 画出求三个不同实数中的最大值的程 开始 序框图.
输入a,b,c 否 否 a>b?


b>c? 是 x=b a>c? 否 x=c

x=c

是 x=a

输出x

结束

小结作业

设计一个算法的程序框图的基本思路:
第一步,用自然语言表述算法步骤. 第二步,确定每个算法步骤所包含的逻 辑结构,并用相应的程序框图表示.

第三步,将所有步骤的程序框图用流程 线连接起来,并加上两个终端框.

作业: P19练习(只要求画出算法的 程序框图). P20习题1.1B组:2.

理论迁移 例1 设计一个求解一元二次方程 ax2+bx+c=0的算法,并画出程序框图表示.
算法分析:

第一步,输入三个系数a,b,c. 第二步,计算△=b2-4ac. 第三步,判断△≥0是否成立.若是,则计 b V p= , q = 算 2a ;否则,输出“方 2a 程没有 实数根”,结束算法. 第四步,判断△=0是否成立.若是,则输出 x1=x2=p,否则,计算x1=p+q,x2=p-q, 并输出x1,x2.

程序框图:

开始 输入a,b,c △ = b2 - 4 a c △ ≥0 ? 是
p= b 2a



q=

V 2a



△=0? 否 x1=p+q x2=p-q 输出“方程没有 实数根”

输出x1=x2=p

输出x1,x2 结束

例2 某工厂2005年的年生产总值为 200万元,技术革新后预计以后每年的年 生产总值都比上一年增长5%.设计一个程 序框图,输出预计年生产总值超过300万 元的最早年份.
算法分析:

第一步, 输入2005年的年生产总值.

第二步,计算下一年的年生产总值. 第三步,判断所得的结果是否大于300. 若是,则输出该年的年份; 否则,返回第二步.

循环结构:

(1)循环体:设a为某年的年生产总值, t为年生产总值的年增长量,n为年份, 则t=0.05a,a=a+t,n=n+1. (2)初始值:n=2005,a=200. (3)控制条件:当“a>300”时终止循 环.

程序框图:

开始 n=2005 a=200 t=0.05a a=a+t n=n+1 a>300? 否

是 输出n
结束

小结作业

条件结构和循环结构的基本特征: (1)程序框图中必须有两个起止框, 穿插输入、输出框和处理框,一定有判 断框. (2)循环结构中包含条件结构,条件结 构中不含循环结构. (3)条件结构和循环结构的程序框图 各有两种形式,相互对立统一.


相关文档

更多相关文档

1.1.4 程序框图的画法
1.1.2 程序框图4(程序框图的画法)
1.1.4程序框图的画法
1、1、2、4程序框图的画法
4.程序框图的画法习题课
程序框图的画法
1、1、2、4程序框图的画法教案
高中数学必修三_1.1.4程序框图的画法
数学《1.1.4 程序框图的画法》
数学《1.1.4 程序框图的画法》(1)
1.1.4程序框图的画法
5程序框图的画法
4高一数学(1.1.2-3程序框图的画法)
4.程序框图的画法习题课
4.程序框图的画法
电脑版