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

合集下载

必修3框图

必修3框图
我们用一个累加变量S表示每一步的计算结果,即把S+i 的结果仍记为S,从而把第i步表示为S=S+i,其中S的初始值 为0,i依次取1,2,„,100,通过重复操作,上述问题的算 法如何设计?
解:(1)算法步骤: 第一步,令i=1,S=0. 第二步,S=S+i. 第三步,i=i+1. 第四步,若i>100成立,则输出S,结束算法;否则,返回 第二步. 注:在写循环结构的算法时,最关键是确定 循环结构。 (1)确定循环体: S=S+i,i=i+1 (2)确定初始变化量: i=1,S=0. (3)设定循环控制条件:①直到型:i>100;(满足条件结束); ②当型:i≤100;(不满足条件结束);
2.基本的程序框和它们各自表示的功能如下:
图形符号 名称
终端框(起 止框) 输入、输 出框 处理框(执 行框) 判断框
功能
表示一个算法的起始和结束 表示一个算法输入和输出 的信息 赋值、计算
流程线 连接点
判断某一条件是否成立,成立 时在出口处标明“是”或 “Y”;不”成立时标明“否” 或“N”. 连接程序框 连接程序框图的两部分
框图
1.1.2 程序框图与算法的基本逻辑结构(1)
温故知新
1.算法的概念:按照一定规则解决某一类问题的 明确和有限的步骤称为算法. 2.算法的特点:有限性、确定性、顺序性、可行 性、不唯一性、普遍性。
2. 任意给定一个大于 1 的正整数 n ,设计一个算 法求出n 的所有因数. 算法步骤: 第一步, 依次以2 ~(n – 1)为除数除 n ,检 查余数是否为0;若是,则是 n 的因数;若不是, 则不是 n 的因数; 第二步, 第三步, 在 n 的因数中加入 1 和 n; 输出n的所有因数.

1.1.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)-循环结构

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.如图所示的程序 框图,若输入的n 是100,则输出的S 和T的值是( ) D A、2500,2500 B、2550,2550
开始 输入n s=0,T=0 是 n<2? 否 s=s+n n=n-1 输出s、T T=T+n 结束
C、2500,2550
D、2550,2500
n=n-1
开始
例1.(1)如图,该程序 框图表示的算法功能 是 计算S=2+4+¨¨+100并输出s , 如果执行这个程序框图, 那么输出的s等 于 2550 。
例1:已知一个三角形的三边边长分别为a,b,c, 利用海伦-秦九韶公式设计一个算法,求出它的 面积,画出算法的程序框图.
S
p
p ( p a )( p b )( p c )
2
abc
例1:已知一个三角形的三边边长分别为a,b,c, 利用海伦-秦九韶公式设计一个算法,求出它的 面积,画出算法的程序框图.
;
第 四 步 : 判 断 0 是 否 成 立 。 若 是 , 则 输 出 x1 x 2 p ; 否 则 , 计 算 x1 p q , x 2 p q , 并 输 出 x1 , x 2
开始 输入a,b,c
b
2
4 ac

0?
否 X1=p+q X2=p-q
开始
输入n i=2
终端框(起止框), 表示一个算法的起始 和结束
n除以i的余数r
i=i+1 否
i>n-1或r=0?
是 否
r=0?
是 n不是质数 n是质数
结束
开始
输入n
输入、输出框 表示一个算法输入和 输出的信息

高中数学必修三《程序框图与算法的基本逻辑结构》课件

高中数学必修三《程序框图与算法的基本逻辑结构》课件

第四步,输出S.
S
p
abc 2
p(p a)(p b)(p c)
上述算法的程序框图如何表示?
输出S 结束
教材5页练习
1、任意给定一个正实数,设计一个算法求以这个数为半
径的圆的面积.
开始
第一步: 给定一个正实数r; 第二步: 计算以r为半径的
输入r
圆的面积S=πr2;
S r2
第三步: 得到圆的面积S.
输入x0,y0,A,B,C
d | Ax0 By0 C | A2 B2
输出d
结束
算法的条件结构:
在某些问题的算法中,有些步骤只有在一定条件下才会被执 行,算法的流程因条件是否成立而变化.在算法的程序框图中,由 若干个在一定条件下才会被执行的步骤组成的逻辑结构,称为条 件结构,用程序框图可以表示为下面两种形式:
---用程序框、流程线及文 字说明来表示算法的图形.
在上述程序框图中, 有4种程序框,2种流程 线,它们分别有何特定的名 称和功能?
开始
输入n
i=2
求n除以i的余数r i的值增加1,仍用i表示
i>n-1或r=0?

r=0? 是
输出“n 不是质数”


输出“n 是质数”
结束
图形符号
名称
功能
终端框
表示一个算法的起始和结束
2a 2a 否则,输出“方程没有实数根”,结束算法。
第四步:判断 0是否成立。若是,则输出x1 x2 p; 否则,计算x1 p q, x2 p q,并输出x1, x2
输出p
开始
输入a,b,c
b2 4ac
0?
是 p b
2a
q 2a

1.1.2_程序框图与算法的基本逻辑结构(1)

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程序框图与算法的逻辑结构

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程序框图与算法的基本逻辑结构

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. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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.
设计感想
本节是前面内容的概括和总结,在回忆前面内容的基础上,选择经典的例题,进行了详尽的剖析,这样降低了学生学习的难度.另外,本节的练习难度适中,并且多为学生感兴趣的问题,这样为学生学好本节内容作好充分准备,希望大家喜欢这一节课.。

相关文档
最新文档