1.1.2程序框图与算法的基本逻辑结构
1.1.2_程序框图与算法的基本逻辑结构
流程线
连接程序框,表示算法步骤的 执行顺序
开始
顺序结构
输入n i=2
n除以i的余数r
循环结构
i=i+1 否
i>n-1或r=0?
是 否
条件结构
r=0?
是 n不是质数 n是质数
结束
顺序结构及框图表示 1.顺序结构:按照步骤依次执行的一个算法 2.顺序结构的流程图
作用
表示算法的输入 和输出的信息
名称
处理框或执行框
作用
赋值、计算
名称
判断框
作用
判断某一条件是否成立, 成立在出口处标明“是”或“Y” 不成立标明“否”或“N”
图形符号
名 称
功 能
终端框 (起止框) 输入、输出 框 处理框 (执行框) 判断框
表示一个算法的起始和结束 表示一个算法输入和输出的 信息 赋值、计算
开始
第一步:输入圆的半径 第二步:利用公式“圆的面 积=圆周率×(半径的平方)” 计算圆的面积; 第三步:输出圆的面积。
输入半径R
计算S=π*R*R
(1)在程序框图中, 开始框和结束框不可少; (2)在算法过程中, 输出语句是必不可少的;
输出面积S
结束
例3:若一个三角形的三条边长分别为a,b, c,令 ,则三角形的面积 .你能利用这个公式 设计一个计算三角形面积的算法步骤吗? 第一步,输入三角形三条边的边长 a,b,c. 第二步,计算 第三步,计算 第四步,输出S.
.
.
上述算法的程序框图如何表示?
开始
输入a,b,c
p=
a + b+ c 2
1.1.2程序框图与算法的基本逻辑结构
解决方法就是加上一个判断,
直到型ቤተ መጻሕፍቲ ባይዱ构
例8 某工厂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
i=2
顺序结构
求n除以i的余数r i的值增加1,仍用i表示 i>n-1或r=0? 是 r=0? 否 否 N是质数 结束
循环结构
是
N不是质数
条件结构
2.算法的三种基本逻辑结构:顺序结构、条件结构、循环结构。
算法千差万别,但都是由这 三种基本逻辑结构构成的.
输入n
i=2
求n除以i的余数r
输出“ n 是质数” 结束
(1)顺序结构 顺序结构是最简单的算法结构,语句与语句 之间,框与框之间是按从上到下的顺序进行的, 它是由若干个依次执行的处理步骤组成的,它是 任何一个算法都离不开的一种基本算法结构。 顺序结构在程序框图中的体现就是用流程线 将程序框自上而下地连接起来,按顺序执行算法 步骤。
否
s=s+i i=i+1 否 i>100? 是
循环结构中都有一个计数变量和累加变量, 判断是否已经加到了 100,如果加到 计数变量用以记录循环次数,同时它的取值还 用于判断循环是否终止,累加变量用于输出结 了则退出,否则继续加。 果,累加变量和计数变量一般是同步执行的, 累加一次,计数一次 . 请填上判断的条件。
1.1.2程序框图与算法的基本逻辑结构(3)-循环结构
当型循环结构
开始
i=1
S=0
i=i+1 S=S+i i≤100?
2
3
4
… … N
0+1 0+1+2 0+1+2+3 … Y Y Y
是
否
输出S 结束
理解应用 以例6为依据,回答:
1) 设计算法:输出1,1+2,1+2+3,…,
1+2+…+100.(提示:改变“输出S”的位置) 2)设计算法解决课本P15“思考题”。
3)画出计算1 +22 + 32+……+992 +1002 的
程序框图
4)画出计算1*2*3*…*100的程序框图
限时训练
课时作业P7: 1-12题
初始化:S = 0, i = 1 终止条件:i > 100
计数变量i:依次取1, 2,…,100, i = i + 1, 其中i的初始值为1.
当型循环结构
第一步,令i=1,S=0. 第二步,如果i≤100成立, Y 则执行第三步, 否则,输出S,结束算法. 第三步,S=S+i. 第四步,i=i+1, 返回第二步. Y Y Y
1.1.2程序框图与算法的基本逻辑结
——循环结构
复习回顾
终端框 输入、输出 (起止框) 框
处理框 (执行框)
判断框
流程3;1
复习回顾
2. 条件结构
否 否
满足条件?
满足条件?
是
步骤A 步骤B
是
步骤A
(1)
(2)
学习目标
1、通过阅读课本P13掌握两种循环结构的概念
1.1.2_程序框图与算法的基本逻辑结构(1)
例4、任意给定3个正实数, 判断以这3个数为三边边 长的三角形是否存在.并画 出这个算法的程序框图。
解:算法步骤如下:
条件结构 程序框图: 开始
输入a,b,c a+b>c,b+c>a, c+a>b是否同 时成立? 是
存在这样 的三角形 不存在这样 的三角形
第一步:输入正实数a,b,c 第二步:判断 a+b>c,b+c>a,c+a>b 是否都成立,若是,则 存在这样的三角形,否 则,则不存在这样的三 角形.
第一课时
知识探究(一):算法的程序框图
“判断整数n(n>2)是否为质数”的算法步骤
2~(n-1)?
第一步,给定一个大于2的整数n; 第二步,令i=2; 第三步,用i除n,得到余数r; 第四步,判断“r=0”是否成立.若是,则n 不是质数,结束算法;否则,将i 的值增加1,仍用i表示; 第五步,判断“i>(n-1)”是否成立,若是, 则n是质数,结束算法;否则,返回 第三步.
知识探究(四):多重条件结构的程序框图 思考1.解关于x的方程ax+b=0的算法步骤 如何设计? 第一步,输入实数a,b.
第三步,判断b是否为0.若是,则输出“ 方 程的解为任意实数”;否则,输出“方程无 第二步,判断a是否为0. 若是,执行第三 b 实数解”. 步;否则,计算x , 并输出x,结束
步骤 n
步骤n+1
例1(1)写出图中程序框图的运行结果:
开始
输入a,b a= 2 b= 4
顺序结构
S=a/b+b/a
输出S 结束
框图? 结构?
图中输出S= 5/2 ;
(2)写出下列算法的功能。
1.1.2程序框图与算法的逻辑结构
作业
A:2 B:2 练习册
作业
A:3
x 补 : y= x = 0 x x 0 x 0 x 0
1.1.2
程序框图
开始 输入n
i=2
求n除以i的余数r
i的值增加1,仍用i表示
i>n-1或r=0? 是 r=0?
否
否
输出“n是质数”
是
输出“n不是质数” 结束
“求整数n(n>1)的所有因数”的算法:
第一步,给定n;
“判断整数n(n>2)是否为质数”的算法: 第一步,给定n; 第二步,令i=2; 第三步,求n除以i的余数r; 第四步,判断“r=0”是否成立.若是,则n 不是质数,结束算法;否则,将i 的值增加1; 第五步,判断“i>(n-1)”是否成立,若是, 则n是质数,结束算法;否则,返回 第三步.
开始 输入n i=2 求n除以i的余数r i的值增加1,仍用i表示 i>n-1或r=0? 是 r=0?
例4:任意给定三个正实数,设计一个算法 判断能否组成三角形,并画出程序框图。
x2 2x 练 习 : y f ( x )= 2
x 2 x 2
例5:设计一个求解一元二次方程 ax2+bx+c=0的算法,并画出程序框图。
x2 2x 练 习 : y f ( x )= 2 x x 2 x 2 x 2
第二步,令i=1; 第三步,求n除以i的余数r;
第四步,判断“r=0”是否成立.若是,则i 是n的因数;否则,i不是n的因数; 第五步,将i的值增加1 第五步,判断“i>n”是否成立,若是,则结 束算法;否则,返回第三步.
例6:设计一个计算1+2+3+…+100 的值的算法,并画出程序框图。
1.1.2程序框图与算法的基本逻辑结构
r=0? 是 n不是质数
Page 3
否 n是质数
结束
开始
2、一个程序框图包括以下几部分: ①表示相应操作的程序框;
输入n i=2 n除以i的余数r i=i+1 i>n-1或r=0? 是 否
②带箭头的流程线;
③程序框外必要的文字说明。 不同的程序框有不同的含义
r=0? 是 n不是质数
Page 4
S p( p a)( p b)( p c)
输出S 结束
Page 15
练习
1、设计一算法:输入圆的半径,输出圆的面积,并画出流 程图
算法分析: 第一步:输入圆的半径 第二步:利用公式 S r 2 计 算圆的面积; 第三步:输出圆的面积。
输入半径R 计算 S r 2
开始
(1)在程序框图中, 开始框和结束框不可少; (2)在算法过程中, 输出语句是必不可少的;
Page 16
输出面积S
结束
2、下列逻辑结构,说出它的算法功能 开始 输入a,b sum=a+b 输出sum
结束 答案:求两个数的和
Page 17
3、已知梯形上底为2,下底为4,高为5,求其面积,设计出 该问题的流程图.
否 n是质数
结束
程序框名称及作用
开始 输入n
终端框(起止框), 表示一个算法的起始和 结束
i=2 n除以i的余数r i=i+1 i>n-1或r=0? 是 否
r=0? 是 n不是质数
Page 5
否 n是质数
结束
开始 输入n
输入、输出框 表示一个算法输入和输 出的信息
i=2 n除以i的余数r i=i+1 i>n-1或r=0? 是 否
高中数学必修三:1.1.2程序框图与逻辑结构
b 2a
2a
第一步:输入三个系数 a , b, c
第二步:计算 b
2
4ac
p b 2a ,q 2a ,
第三步:判断 0 是否成立.若是,则计算
否则,输出“方程没有实数根”,结束算法. 第四步:判断 0 是否成立.若是,则输出 x1 x2 p 否则,计算 x1 p q, x2 p q, 并输出 x1 , x2 .
第四步,判断i是否大于(n-1),若是,则n是质数; 否则,返回第三步。
开始
上例算法的流程图
注意观察右边的流程图:
输入n
i=2 求n除以i的余数r
(1)有箭头指向的线. i=i+1 (2)不同形状的框图. i>=n或r=0 是 r = 0? 是i=2 求n 除以i 的余数r
步骤n+1
例1、已知一 个三角形的三 边边长分别为 a,b,c,利 用海伦—秦九 韶公式设计一 个算法,求出 S 它的面积,并 画出程序框图。
开始
输入a,b,c
p a bc 2
p ( p a )( p b )( p c )
输出S 结束
例2 .已知下图是“求一个正奇数的平方 加5的值”的程序框图,若输出的数是30,求 输入的数n的值. 开始
否
是否同时成立?
是 存在这样 的三角形 结束 不存在这样 的三角形
例4.设计一个求解一元二次方程 ax bx c 0 的算法,并画 出程序框图表示. 0 有两个不相等的实数根 0 有两个相等的实数根 0 没有实数根 算法
x b b 4ac 2a
2
2
1.1.2
程序框图与算法 的基本逻辑结构
1.1.2算法与程序框图
循环结构分为当型循环结构和 循环结构分为当型循环结构和直到型循环结构 当型循环结构
循环体 循环体 是 满足条件? 满足条件? 否 当型循环结构 满足条件? 满足条件? 是 直到型循环结构 否
差异:循环终止条件不同 检验条件是否成立的先后次序也不同 差异 循环终止条件不同,检验条件是否成立的先后次序也不同 循环终止条件不同 检验条件是否成立的先后次序也不同. 当型循环结构:先判断后执行循环体 先判断后执行循环体. 当型循环结构 先判断后执行循环体 直到型循环结构:先执行循环体后判断条件是否成立 先执行循环体后判断条件是否成立. 直到型循环结构 先执行循环体后判断条件是否成立
1.1.2 程序框图 与 算法的基本逻辑结构
程序框
名称
终端框 起止框) (起止框) 输入、 输入、输出框 处理框 执行框) (执行框)
功能
表示一个算法的起始和结束 表示一个算法输入和 输出的信息 赋值、 赋值、计算
判断框
判断某一条件是否成立, 判断某一条件是否成立,成立 时在出口处标明“ 时在出口处标明“是”或“Y”; ; 不成立时标明“ 不成立时标明“否”或“N”. . 连接程序框
结束
判断整数n(n>2)是否为质数”的算法: 判断整数n(n>2)是否为质数”的算法: n(n>2)是否为质数
开始 输入n 输入 i=2 设n是一个大 是一个大 的整数. 于2的整数 的整数
一般用i=i+1 一般用 表示. 表示
除以i的余数 求n除以 的余数 除以 的余数r
i=i+1 i的值增加 仍用 表示 的值增加1仍用 的值增加 仍用i表示
循环结构一定包含条件结构,用以控制循环过程 避免出现 循环结构一定包含条件结构 用以控制循环过程,避免出现 用以控制循环过程 死循环” 判断框内写上条件 判断框内写上条件,两个出口分别对应终止条件成 “死循环”.判断框内写上条件 两个出口分别对应终止条件成 立与否,其中一个指向循环体 经过循环体回到判断框的入口处. 其中一个指向循环体,经过循环体回到判断框的入口处 立与否 其中一个指向循环体 经过循环体回到判断框的入口处
1.1.2 程序框图与算法的基本逻辑结构
输入n i=2
二、条件结构 是指在算法中通过对条件的判 断,根据条件是否成立而选择不同流向的算 法结构。
是 满足条件?
否
满足条件?
是
否
步骤1
步骤2
步骤1
步骤2
r=0?
是
否
输出“n不是质数” 输出“n是质数”
例4、已知一个三角形的三边分别为a、 b、c,请设计一个算法,求出它的面 积,并画出算法的程序框图。
1.1.2 程序框图与算法的基本逻 辑结构
程序构图
程序框图又称流程图,是一种用规定的图形、 指向线及文字说明来准确、直观地表示算法 的图形。
程序框 名称 起止框 功能 表示一个算法的起始和结束,是任何 流程图不可少的。
输入、输出框
表示一个算法输入和输出的信息,可 用在算法中任何需要输入、输出的位 置。
一类是多分支判断,有几种不同的结果. (5)在图形符号内描述的语言要非常简练清楚
算法的基本逻辑结构
任何算法的程序框图都可以用三种基本结构 的组合来实现,它们是顺序结构、条件结构、 循环结构 。 一、顺序结构 它是由若干个依次执行的处 理步骤组成的,它是任何一个算法都离不开 的一种基本算法结构。
如在下面图中,A框和B框是依次执行的, 只有在执行完A框指定的操作后,才能接 着执行B框所指定的操作。 A B
否
输出“n是质数” 输出“n不是质数”
开始
否 例1: 将“判断整数n (n>2)是否为质数” 的算法用程序框图表 示.
i的值增加1,仍用i表示
i>n-1或r=0?
是
画流程图的基本规则.
(1)使用标准的图形符号. (2)框图一般按从上到下、从左到右的方向画. (3)除判断框外,大多数流程图符号只有一个 流入点和一个流出点.判 断框具有超过一个流出 点的惟一符号. (4)判断框分两大类,一类判断框“是”与 “否”两分支的判断,而且有且仅有两个结果;另
1.1.2__程序框图与和算法的基本逻辑结构
否
n是质数
结束
开始 输入n
顺序结构
i=2
是 r=0? 是 n不是质数 否
条件结构
n是质数
结束
求n除以i的余数r
i的值增加1,仍用i表示 i>n-1或r=0?
否
循环结构
是
顺序结构
顺序结构:是由若干个依次执行的步骤组 成的。这是任何算法都离不开的基本结构
步骤 n 步骤n+1
例3 已知一个三角形的三边长确分别为a,b,c,利用海 伧-秦九韶公式设计一个算法,求出它的面积,画出算 法的程序框图.
2、程序框图图例的名称和意义(作用) 3、如何用程序框图表示顺序结构、选择结构
1.1.2 程序框图与和算 法的基本逻辑结构
第二课时
复习:
起止框 流程线
程 序 框 图
处理框(执行框) 判断框
输入\输出框
终端框
程序框图
1、顺序结构
A
三种基本算法结构
2、条件结构
p
是 否
B
A
B
无论条件P是否成立,都 能执行A框、B框中的一个, 既不能同时执行、也不能 都不执行。A、B框中可以 有一个是空的。
思考4:该算法中哪几个步 骤构成循环结构?这个循环 结构用程序框图如何表示?
第二步,确定区间[a,b], 满足f(a)·f(b)<0. 第三步,取区间中点 m a b 2 第四步,若f(a)·f(m)<0,则 含零点的区间为[a,m];否则, 含零点的区间为[m,b].将新 得到的含零点的区间仍记为[a, b].
3、循环结构
直到型( Until )循环
当型(While)循环
A 循环体 循环体
1.1.2程序框图与算法的基本逻辑结构(1)
n不是质数
结束
开始
顺序结构
输入n i=2
n除以i的余数r
循环结构
i=i+1
否
i>n-1或r=0?
是
条件结构
r=0?
是
否
n不是质数
n是质数
结束
顺序结构及框图表示 1.顺序结构:按照步骤依次执行的一个算法 2.顺序结构的流程图
语句A
语句B
例1(1)写出图中程序框图的运行结果:
开始 输入a,b
a=2 b=4
n是质数
r=0?
是
n不是质数
结束
开始
输入n
输入、输出框 表示一个算法输入和 输出的信息
i=2
n除以i的余数r
i=i+1
i>n-1或r=0? 是
r=0? 否
是
否
n不是质数
n是质数
结束
开始
输入n
处理框(执行框) 赋值、计算
i=2
n除以i的余数r
i=i+1
i>n-1或r=0? 是
r=0?
是
否 否
n是质数
.
.
上述算法的程序框图如何表示?
开始
输入a,bห้องสมุดไป่ตู้c
a + b+ c 2
p =
S =
p( p - a )( p - b)( p - c)
输出S 结束
n不是质数
结束
开始
输入n i=2
判断框 判断某一条件是否成立,成 立时在出口处标明“是”; 不成立时标明“否”
n除以i的余数r
i=i+1
i>n-1或r=0?
【同步练习】必修三 1.1.2 程序框图与算法的基本逻辑结构-高一数学人教版(解析版)
第一章算法初步1.1.2 程序框图与算法的基本逻辑结构一、选择题1.a表示“处理框”,b表示“输入、输出框”,c表示“起止框”,d表示“判断框”,以下四个图形依次为A.abcd B.dcab C.bacd D.cbad【答案】D【解析】根据程序框图中各图框的含义,易知第一个图形是“起止框”,第二个图形是“输入、输出框”,第三个图形是“处理框”,第四个图形是“判断框”,所以选D.2.程序框图中具有超过一个退出点的框图符号是A.起止框B.输入框C.处理框D.判断框【答案】D【解析】判断框是具有超出一个退出点的框图符号.3.程序框图中,具有赋值、计算功能的是A.处理框B.输入、输出框C.终端框D.判断框【答案】A【解析】在算法框图中处理框具有赋值和计算功能.4.下列关于程序框图的说法正确的是A.程序框图是描述算法的语言B.程序框图中可以没有输出框,但必须要有输入框给变量赋值C.程序框图虽可以描述算法,但不如用自然语言描述算法直观D.程序框图和流程图不是一个概念【答案】A【解析】由于算法设计时要求有执行的结果,故必须要有输出框,对于变量的赋值,则可以通过处理框完成,故算法设计时不一定要用输入框,所以B选项是错误的;相对于自然语言,用程序框图描述算法的优点主要就是直观、形象、容易理解,在步骤上表达简单了许多,所以C选项是错误的;程序框图就是流程图,所以D选项也是错误的.故选A.5.关于程序框图的框图符号的理解,正确的是①任何一个程序框图都必须有起止框;②输入框、输出框可以在算法中任何需要输入、输出的位置出现;③判断框是唯一具有超过一个退出点的框图符号;④对于一个程序来说,判断框内的条件是唯一的.A.1个B.2个C.3个D.4个【答案】C【解析】任何一个程序都有开始和结束,从而必须有起止框;输入、输出框可以在算法中任何需要输入、输出的位置出现,判断框内的条件不是唯一的,如a>b?也可以写为a≤b?.但其后步骤需相应调整,故①②③正确,④错误.6.程序框图叙述正确的是A.表示一个算法的起始和结束,程序框是B.表示一个算法输入和输出的信息,程序框是C.表示一个算法的起始和结束,程序框是D.表示一个算法输入和输出的信息,程序框是【答案】C【解析】由程序框的算法功能可知选项C正确.7.执行下面的程序框图,如果输入t∈[-1,3],则输出的s属于A.[-3,4] B.[-5,2] C.[-4,3] D.[-2,5]【答案】A【解析】因为t∈[-1,3],当t∈[-1,1)时,s=3t∈[-3,3);当t∈[1,3]时,s=4t-t2=-(t2-4t)=-(t-2)2+4∈[3,4]所以s∈[-3,4].二、填空题8.如图所示的程序框图,输出的结果是S=7,则输入的A值为____________.【答案】3【解析】该程序框图的功能是输入A,计算2A+1的值.由2A+1=7,解得A=3.9.在程序框图中,表示输入、输出框的是____________.【答案】平行四边形框【解析】平行四边形框表示数据的输入或者结果的输出.10.如图所示的程序框图中,当输入的数为3时,输出的结果为____________.【答案】8【解析】∵3<5,∴y=32-1=8.11.以下给出对程序框图的几种说法:①任何一个程序框图都必须有起止框;②输入框只能紧接开始框,输出框只能紧接结束框;③判断框是唯一具有超出一个退出点的符号.其中正确说法的个数是____________.【答案】2【解析】①③正确.因为任何一个程序框图都有起止框;输入、输出框可以在程序框图中的任何需要位置;判断框有一个入口、两个出口.12.阅读如图的框图,运行相应的程序,输出S的值为____________.【答案】-4【易错易混】在设计具体的程序框图时,循环结构的判断框中的条件可能根据选择模型的不同而不同,也可能由于具体算法的特点而不同,但不同的条件应该有相同的确定的结果.三、解答题13.用程序框图描述算法:已知梯形的两底边长分别为a,b,高为h,求梯形面积.【答案】答案详见解析.【解析】梯形面积S=12(上底+下底)×高又∵梯形的两底边长分别为a,b,高为h,故程序算法如下:第一步:输入a,b,h的值,第二步:计算S=()2a b h+,第三步:输出S,程序框图如下:14.已知函数y=2x+3,设计一个算法,若给出函数图象上任一点的横坐标x(由键盘输入),求该点到坐标原点的距离,并画出程序框图.【解析】算法如下:第一步,输入横坐标的值x.第二步,计算y=2x+3.第三步,计算d=x2+y2.第四步,输出D.程序框图如图:。
1.1.2程序框图与算法的基本逻辑结构2
思考:用直到型循环结构,这个算 法的程序框图如何表示?用当型循 环呢?
解决这一问题的算法是: 第一步,令i=1,S=0.
第二步,计算S+i,仍用S表示.
第三步,计算i+1,仍用i表示. 第四步,判断i>100是否成立.若是,则输出S,结束算法;否则, 返回第二步.
解:y与x之间的函数关系为: (当0≤x≤7时) 1.2 x,
y 1.9 x 4.9 (当x>7时)
解:y与x之间的函数关系为:
(当0≤x≤7时) 1.2 x, y 1.9 x 4.9 (当x>7时)
程序框图
开始
输入x
0<x≤7?
算法分析:
第一步:输入每月用水量 x; 第二步:判断x是否不超 过7.若是,则y=1.2x;若 否,则y=1.9x-4.9. 第三步:输出应交纳的水 费y.
练习: 教材20页习题B组1:
开始
输入a1,b1,c1,a2,b2,c2
a1b2-a2b1≠0?
否
是
x b2 c1 b1c2 a1b2 a2b1 a1c2 a2c1 a1b2 a2b1
y
输出x,y
输“输入数据不合要求”
结束
练习: 教材20页习题B组2:
开始
n=1
输入r
r≥6.8? 否 输出r
该算法中哪几个步骤可以用顺序结构来表示?这个顺序结构
的程序框图如何? 第一步:令 f ( x) x2 2 ,给定精确度d. 第二步:确定区间[a,b], 满足f(a)·f(b)<0.
1.1.2程序框图与逻辑结构课时1定稿
设计一个计算1+2+3+……+100的值的算 例4:设计一个计算 设计一个计算 的值的算 并画出程序框图. 法,并画出程序框图 并画出程序框图 算法分析: 算法分析 各步骤有共同的结构: 各步骤有共同的结构 第1步:0+1=1; 步 步的结果+i=第 步的结果 第(i-1)步的结果 第i步的结果 步的结果 第2步:1+2=3; 步 第3步:3+3=6; 步 第4步:6+4=10 步 ………… 为了方便有效地表示上述过程,我 为了方便有效地表示上述过程 我 们引进一个累加变量 累加变量S来表示每 们引进一个累加变量 来表示每 一步的计算结果,从而把第 从而把第i步表 一步的计算结果 从而把第 步表 S=S+i 示为
则输出x1 = x2 = p 第四步: 第四步 判断∆ = 0是否成立。若是, 否则,计算 x1 = p + q, x2 = p − q, 并输出x1,x2 .
开始
例3. 设计一个求解一 元二次方程 ax 2 + bx + c = 0 的算法,并画出程序框图。 的算法,并画出程序框图。
输入a,b,c
已知一个三角形的三边边长分别为2,3,4, 例1:已知一个三角形的三边边长分别为 已知一个三角形的三边边长分别为 利用海伦-秦九韶公式设计一个算法 秦九韶公式设计一个算法,求出它的 利用海伦 秦九韶公式设计一个算法 求出它的 面积,画出算法的程序框图 画出算法的程序框图. 面积 画出算法的程序框图 算法分析: 算法分析 第一步:计算 的值 第一步 计算p的值 计算 的值. 第二步:由海伦 秦九韶公式求出三角形的面积 第二步 由海伦-秦九韶公式求出三角形的面积 由海伦 秦九韶公式求出三角形的面积S. 第三步:输出 的值 第三步 输出S的值 输出 的值.
1.1.2-1.1.3 程序框图与算法的基本逻辑结构(一、二)1
流程线
三、概念形成
概念1.程序框图的概念 说明:一个算法步骤到另一个算法步骤用流程线连 接。如果一个框图需要分开来画,要在断开处画上 连接点,并标注连接号码。 1
开始
D0
N
Y
输入
a, b, c
2
D b 4ac
1
x1 (b D ) / 2a
输出无实根
结束
三、概念形成
概念2.画程序框图的规则
开始
输入
通常用一些通 用图形符号构成一 张图来表示算法。 这种图称做程序框 图(简称框图)也 叫流程图。
比如:求一元二次 方程ax2+bx+c=0的 根的框图
a, b, c
D b2 4ac
D0
N
Y
x1 (b D ) / 2a
输出无实 根
结束
三、概念形成
概念1.程序框图的概念
开始
i=1
S=0
i=i+1 S=S+i i≤100?
例1 若一个三角形的三条边长分别为a,b, c,令p=(a+b+c)/2,则三角形的面积
S p( p a )( p b)( p c )
试用这个公式设计一个计算三角形面积的算 法步骤. 第一步,输入三角形三条边的边长a,b,c.
例1 若一个三角形的三条边长分别为a,b, c,令p=(a+b+c)/2,则三角形的面积
概念2.条件分支结构 任意给定3个正实 数,设计一个算法, 判断分别以这3个 数为三边边长的 三角形是否存在。 画出这个算法的 程序框图。
输入a,b,c
a+b>c,a+c>b,b+c>a 是否同时成立?
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.1.2 程序框图与算法的基本逻辑结构
教学目标
能够正确说出各种程序框图及流程线的功能与作用
能够画出顺序结构、条件结构、循环结构的流程图
能够设计简单问题的流程图
教学重点
程序框图的画法.
教学难点
程序框图的画法.
课时安排
4课时
教学过程
第1课时程序框图及顺序结构
图形符号名称功能
终端框(起止框)表示一个算法的起始和结束
输入、输出框表示一个算法输入和输出的信息
处理框(执行框)赋值、计算
判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”
流程线连接程序框
连接点连接程序框图的两部分
顺序结构条件结构循环结构应用示例
例1 请用程序框图表示前面讲过的“判断整数n(n>2)是否为质数”的算法.
解:程序框图如下:
变式训练
观察下面的程序框图,指出该算法解决的问题.
解:这是一个累加求和问题,共99项相加,该算法是求100991431321211⨯++⨯+⨯+⨯ 的值.
例2 已知一个三角形三条边的边长分别为a ,b ,c ,利用海伦—秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.(已知三角形三边边长分别为a,b,c ,则三角形的面积为S=))()((c p b p a p p ---),其中p=2
c b a ++.这个公式被称为海伦—秦九韶公式)
算法步骤如下:
第一步,输入三角形三条边的边长a,b,c.
第二步,计算p=
2c b a ++. 第三步,计算S=
))()((c p b p a p p ---.
第四步,输出S.
程序框图如下:
点评:很明显,顺序结构是由若干个依次执行的步骤组成的,它是最简单的逻辑结构,它是任何一个算法都离不开的基本结构.
顺序结构可以用程序框图表示为
变式训练
下图所示的是一个算法的流程图,已知a 1=3,输出的
b=7,求a 2的值.
解:根据题意2
21a a +=7, ∵a 1=3,∴a 2=11.即a 2的值为11.
随堂练习 如下给出的是计算
20
1614121++++ 的值的一个流程图,其中判断框内应填入的条件是______________. 语句n+1 语句n
答案:i>10.
第2课时条件结构教学目标
1、认识条件结构
2、能独立画出两种条件结构图示
教学重点: 直到型结构、当型结构
教学难点: 直到型结构、当型结构互化 学习对象
条件结构:先根据条件作出判断,再决定执行哪一种操作的结构就称为条件结构(或分支结构),如图1所示.执行过程如下:条件成立,则执行A 框;不成立,则执行B 框.
图1 图2 应用示例
例1 任意给定3个正实数,设计一个算法,判断以这3个正实数为三边边长的三角形是否存在,并画出这个算法的程序框图.
算法步骤如下:
第一步,输入3个正实数a ,b ,c.
第二步,判断a+b>c ,b+c>a ,c+a>b 是否同时成立.若是,则存在这样的三角形;否则,不存在这样的三角形.
程序框图如右图:
例2 设计一个求解一元二次方程ax 2+bx+c=0的算法,并画出程序框图表示.
解决这一问题的算法步骤如下:
第一步,输入3个系数a ,b ,c.
第二步,计算Δ=b 2-4ac.
第三步,判断Δ≥0是否成立.若是,则计算p=a
b 2-,q=a 2∆;否则,输出“方程没有实数根”,结束算法.
第四步,判断Δ=0是否成立.若是,则输出x 1=x 2=p ;否则,计算x 1=p+q ,x 2=p-q ,并输出x 1,x 2.
程序框图如下:
随堂练习
1、设计算法判断一元二次方程ax2+bx+c=0是否有实数根,并画出相应的程序框图. 相应的程序框图如右:
2、(1)设计算法,求ax+b=0的解,并画出流程图.
程序框图如下:
作业:
设计算法,找出输入的三个不相等实数a、b、c中的最大值,并画出流程图.解:算法步骤:
第一步,输入a,b,c的值.
第二步,判断a>b是否成立,若成立,则执行第三步;否则执行第四步.
第三步,判断a>c是否成立,若成立,则输出a,并结束;否则输出c,并结束. 第四步,判断b>c是否成立,若成立,则输出b,并结束;否则输出c,并结束. 程序框图如下:
第3课时循环结构
教学目标
1、认识循环结构
2、能独立画出两种循环结构图示
3、能把直到型循环改写成当型结构,反之亦然
教学重点: 直到型结构、当型结构
教学难点: 直到型结构、当型结构互化
学习对象
在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况,这就是循环结构.反复执行的步骤称为循环体.
循环结构有两种形式:当型循环结构和直到型循环结构.
当型循环结构直到型循环结构直到型循环结构是程序先进入循环体,然后对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.
当型循环结构是在每次执行循环体前,先对条件进行判断,当条件满足时,执行循环体,否则终止循环.
应用示例
例1设计一个计算1+2+……+100的值的算法,并画出程序框图.
第一步,令i=1,S=0.
第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.
第三步,S=S+i.
第四步,i=i+1,返回第二步.
当型循环直到型循环
变式训练
例1 设计框图实现1+3+5+7+…+131的算法.
第一步,赋初值i=1,sum=0.
第二步,sum=sum+i,i=i+2.
第三步,如果i≤131,则反复执第二步;否则,执行下一步.
第四步,输出sum.
第五步,结束.
程序框图如右图
知能训练
设计一个算法,求1+2+4+…+249的值,并画出程序框图.
第4课时程序框图的画法
应用示例
例1 结合前面学过的算法步骤,利用三种基本逻辑结构画出程序框图,表示用“二分法”求方程x2-2=0(x>0)的近似解的算法.
算法分析:(1)算法步骤中的“第一步”“第二步”和“第三步”可以用顺序结构来表示(如下图):
(2)算法步骤中的“第四步”可以用条件结构来表示(如下图).在这个条件结构中,“否”分支用“a=m”表示含零点的区间为[m,b],并把这个区间仍记成[a,b];“是”分支用“b=m ”表示含零点的区间为[a,m],同样把这个区间仍记成[a,b].
(3)算法步骤中的“第五步”包含一个条件结构,这个条件结构与“第三步”“第四步”构成一个循环结构,循环体由“第三步”和“第四步”组成,终止循环的条件是“|a-b|<d或f(m)=0”.在“第五步”中,还包含由循环结构与“输出m”组成的顺序结构(如下图).
(4)将各步骤的程序框图连接起来,并画出“开始”与“结束”两个终端框,就得到了表示整个算法的程序框图(如下图).
解:将实际问题转化为数学模型,该问题就是要求
1+2+4+……+263的和.
程序框图如下:
点评:对于开放式探究问题,我们可以建立数学模型(上面的题目可以与等比数列的定义、
性质和公式联系起来)和过程模型来分析算法,通过设计算法以及语言的描述选择一些成熟
的办法进行处理.
例3 乘坐火车时,可以托运货物.从甲地到乙地,规定每张火车客票托运费计算方法是:
行李质量不超过50 kg 时按0.25元/kg ;超过50 kg 而不超过100 kg 时,其超过部分按0.35
元/kg ;超过100 kg 时,其超过部分按0.45元/kg .编写程序,输入行李质量,计算出托运
的费用.
分析:本题主要考查条件语句及其应用.先解决数学问题,列出托运的费用关于行李质量的
函数关系式.设行李质量为x kg ,应付运费为y 元,则运费公式为:
y=⎪⎩
⎪⎨⎧>-+⨯+⨯≤<-+⨯≤<,100),100(45.05035.05025.0,10050),50(35.05025.0,500,25.0x x x x x x
整理得y=⎪⎩
⎪⎨⎧>-≤<-≤<.100,1545.0,10050,535.0,500,25.0x x x x x x
要计算托运的费用必须对行李质量分类讨论,因此要用条件语句来实现.
解:算法分析:
第一步,输入行李质量x.
第二步,当x≤50时,计算y=0.25x,否则,执行下一步.
第三步,当x≤100,计算y=0.35x-5,否则,计算y=0.45x-15.
第四步,输出y.
程序框图如下:
课堂小节
(1)进一步熟悉三种逻辑结构的应用,理解算法与程序框图的关系.
(2)根据算法步骤画出程序框图.
作业
习题1.1B组1、2.
设计感想
本节是前面内容的概括和总结,在回忆前面内容的基础上,选择经典的例题,进行了详尽的剖析,这样降低了学生学习的难度.另外,本节的练习难度适中,并且多为学生感兴趣的问题,这样为学生学好本节内容作好充分准备,希望大家喜欢这一节课.。