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

变式训练(1): 编写程序求:12 +22 +32 +42 +……+1002的值.
开始
i=1 S=0
如何修改?
开始
i=1 S=0 i=i+1
否 i≤100?
S=S+i S=S+i 2
i=i+1
直到 型循 环结 构
i>100? 是
输出S
是
2 S=S+i S=S+i
否 输出S
结束
结束
当型循环 结构
变式训练(2): 1 1 1 1 编写程序求: 1 2 3 4 100 的值. 开始 如何修改? 开始
S=S*i 否 i≤6? 否 是
i=i+1 i>6?
是 输出S 结束
输出S
结束
变式训练(1): 编写程序求:12 +22 +32 +42 +……+1002的值. 变式训练(2): 1 1 1 1 编写程序求: 1 的值. 2 3 4 100 变式训练(3): 编写程序求:1+2+3+4+5+……+n的值. 变式训练(4): 编写程序求:n!=1×2×3×4×5×……×n的值. 变式训练(5): 编写程序求:1×3×5×7×……×101的值.
知识回顾
1、算法的概念
在数学上, “算法”通常是指可以用计算机来 解决的某一类问题的程序或步骤,这些程序或 步骤必须是明确和有效的,而且能够在有限步 之内完成.
2、算法最重要的特征: (1).有序性 (2).确定性 (3).有限性
3、程序框图的三种基本的逻辑结构
1.1.2程序框图与算法的基本逻辑结构

否
是
输出S
结束
说明:(1)一般地,循环结构中都有一个计数变量 和累加变量.计数变量用于记录循环次数,同时它 的取值还用于判断循环是否终止,累加变量用于 输出结果.累加变量和计数变量一般是同步执行 的,累加一次,记数一次. (2)循环结构分为两种------当型和直到型. 当型循环在每次执行循环体前对循环条 件进行判断,当条件满足时执行循环体,不满足 则停止;(当条件满足时反复执行循环体) 直到型循环在执行了一次循环体之后,对 控制循环条件进行判断,当条件不满足时执行 循环体,满足则停止.(反复执行循环体,直到条件 满足)
连接程序框,表示算法步 骤的执行顺序
知识探究(一):算法的程序框图
“判断整数n(n>2)是否为质数”的算法步骤 第一步,给定一个大于2的整数n; 第二步,令i=2; 第三步,用i除n,得到余数r; 第四步,判断“r=0”是否成立.若是,则n 不是质数,结束算法;否则,将i 的值增加1,仍用i表示; 第五步,判断“i>(n-1)”是否成立,若是, 则n是质数,结束算法;否则,返回 第三步.
1.1.2
程序框图与算法 的基本逻辑结构
自然语言
流程图
程序框图:一种用程序框、流程线 及文字说明来表示算法的图形.
图形符号
名 称
功 能
终端框 (起止框) 输入、 输出框
处理框 (执行框) 判断框 流程线
表示一个算法的起始和 结束 表示一个算法输入和输 出的信息 赋值、计算
判断某一条件是否成立,成立 时在出口处标明“是”或“Y”; 不成立时标明“否”或“N”
分析:空格位置判断条件, 应该考虑循环的终止条件是 什么?
应该填入:i>10
例5:某工厂2005年的年生产总值为 200万元,技术革新后预计以后每年的 年生产总值都比上一年增长5℅.设计 一个程序框图,输出预计年生产总值 超过300万元的最早年份.
高中数学必修三《程序框图与算法的基本逻辑结构》课件

第四步,输出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
必修3课件1.1.2-3程序框图与算法的基本逻辑结构

f (a ) f ( m ) 0?
是
bm
am
ab 循环结构 2 [ 含零点的区间为[m, b]. 第四步:若 f (a ) f ( m ) 0, 则含零点的区间为 a , m];否则, 将新得到的含零点的区间仍记为[a , b]. 第五步:判断[a , b]的长度是否小于d或f(m)是否等于0. 若是,则m是方程的近似值;否则,返回第三步.
第三步:取区间中点 m
第三步 第四步
| a b | d或 f ( m ) 0?
是
输出 m
否
开始
f ( x) x2 2
否 输入精确度d 和初始值a , b
am
ab m 2
f (a ) f ( m ) 0?
是
bm
| a b | d或 f ( m ) 0?
是
否
第一步:用自然语言表述算法步骤.
第二步:确定每一个算法步骤所包含的逻辑结构,并用相 应的程序框图表示,得到该步骤的程序框图. 第三步:将所有步骤的程序框图用流程线连接起来,并 加上终端框,得到表示整个算法的程序框图.
【例2】 x2 写出用“二分法”求方程 2 0( x 0) 法. 第一步:令 f ( x ) x 2 2, 给定精确度d. 第二步:确定区间[a, b], 满足 f (a ) f (b) 0
是
步骤A 步骤B
是
步骤A
(1)
(2)
循环结构
循环体
循环体 满足条件?
否
满足条件?
是
是
否
直到型
当型
2.在学习上,我们要求对实际问题能用自然语言 设计一个算法,再根据算法的逻辑结构画出程序框 图,同时,还要能够正确阅读、理解程序框图所描 述的算法的含义,这需要我们对程序框图的画法有 进一步的理解和认识. 思考1:解关于x的方程ax+b=0的算法步骤如何设计? 第一步,输入实数a,b. 第二步,判断a是否为0.若是,执行第三步;否则, b x = 计算 ,并输出x,结束算法. a 第三步,判断b是否为0.若是,则输出“方程的解为 任意实数”;否则,输出“方程无实数解”.
1.1.2程序框图与算法的基本逻辑结构课件人教新课标

2.对于条件结构,首先对问题设置的条件作出 判断,设置好判断框内的条件,然后根据条件 是否成立选择不同的流向.(如例 2) 3.循环结构程序框图的设计要搞清“三个对 应”
初始值
判断框内的值
计数变量的值
循环结构形式
计数 先—后—顺→序 求值 (如例 3)
失误防范 如不画出箭头就难以判断 各框的执行顺序.判断框的两个出口处要注明 “是”与“否”. 2.在循环结构中,要注意根据条件设置合理 的计数变量,累加(乘)变量,同时条件的表述 要恰当、精确.累加变量的初值一般为0,而 累乘变量的初值一般为1.(如例3)
→ 如果a<0,则得到_最__大__值__m
2.你会发电子邮件吗?其流程是这样的 打开电子邮箱 → 点击写邮件 → 输入发送地址
→ 输入主题 → 输入_信__件__内容 → _点__击__发__送__
知新益能
1.任何一种算法都是由三种基本逻辑结构组 成的,它们是_顺__序__结构、 _条__件__结构、__循__环_ 结构. 2.顺序结构是任何一个算法都不可缺少的基 本结构,它是由若干个__依__次__执__行_的步骤组成 的.
图形符号 名称
功能
终端框(起 表示一个算法的__起___
止框)
和__结__束_ 始
输入、输 出框
处理框(执 行框)
表示一个算法输入和 _输____的信息 出
赋值、计算
图形符号 名称
功能
判断某一条件是否成立,
_判__断__框__
成立时在出口处标明 “是”或“Y”;不成立
时标明“否”或“N”
流程线
_连__接__程__序__框__
【思路点拨】 本题是乘法运算的多次重复, 且参与运算的各数之间依次多1,故可采用循 环结构:M=M×i,i=i+1.
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)判断框分两大类,一类判断框“是”与 “否”两分支的判断,而且有且仅有两个结果;另
必修3课件1.1.2-1程序框图与算法的基本逻辑结构
流程线 连接点
四种基本框图的用法
(1)起止框:框内填写开始、结束,任何程序框图 中,起止框是必不可少的;
(2)输入、输出框:框内填写输入、输出的字母、 符号等; (3)处理框(执行框):算法中需要的算式、 公式、 对变量进行赋值等要用执行框表示. (4)判断框:当算法要求在不同的情况下执行不同 的运算时,需要判断框.框内填写判断条件.
结束
i=2
否
否
输出“n是质数”
开始 输入n i=2 求n除以i的余数 i的值增加1,仍用i表示 i>n-1或r=0? 是 r=0?
否 否
输出“n是质数”
在上述程序 框图中,有4种 程序框,2种流 程线,它们分别 有何特定的名称 和功能?
是
输出“n不是质数” 结束
1.程序框图
算法的表现形态不仅有自然语言,还有程序框图 与程序.用自然语言描述算法的优点是通俗易懂,当算 法中的操作步骤都是顺序执行时比较容易理解.缺点 是如果算法中包含判断和循环,并且操作步骤较多时, 就不那么直观清晰了.
程序框图
开始 输入n i=2 求n除以i的余数 i的值增加1,仍用i表示
用程序框、流 程线及文字说明来 表示算法的图形.
i>”
是
输出“n不是质数” 结束
开始 输入n
上述表示算 求n除以i的余数 法的图形称为算 法的程序框图又 i的值增加1,仍用i表示 称流程图,其中 的多边形叫做程 i>n-1或r=0? 序框,带方向箭 是 头的线叫做流程 r=0? 是 线,你能指出程 序框图的含义吗? 输出“n不是质数”
步骤n
步骤n+1
例1.“鸡兔同笼”是我国隋朝时期的数学著作《 孙子算经》中的一个题目:“今有鸡兔同笼,上有三十 五头,下有九十四足,问鸡兔各几何.” 请您设计一个 这类问题的通用算法.并画出算法的程序框图.
程序框图与算法的基本逻辑结构
图形符号名称功能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)赋值、计算判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”流程线连接程序框连接点连接程序框图的两部分三种逻辑结构可以用如下程序框图表示:顺序结构条件结构循环结构变式训练观察下面的程序框图,指出该算法解决的问题.解:这是一个累加求和问题,共99项相加,该算法是求100991431321211⨯++⨯+⨯+⨯ 的值.例2 已知一个三角形三条边的边长分别为a ,b ,c ,利用海伦—秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.(已知三角形三边边长分别为a,b,c ,则三角形的面积为S=))()((c p b p a p p ---),其中p=2c b a ++.这个公式被称为海伦—秦九韶公式)算法步骤如下:第一步,输入三角形三条边的边长a,b,c.第二步,计算p=2c b a ++. 第三步,计算S=))()((c p b p a p p ---.第四步,输出S.程序框图如下:点评:很明显,顺序结构是由若干个依次执行的步骤组成的,它是最简单的逻辑结构,它是任何一个算法都离不开的基本结构.顺序结构可以用程序框图表示为语句n语句n+1件是______________. 答案:i>10.构),如图1所示.执行过程如下:条件成立,则执行A框;不成立,则执行B框.图1 图2应用示例例1 任意给定3个正实数,设计一个算法,判断以这3个正实数为三边边长的三角形是否存在,并画出这个算法的程序框图.算法步骤如下:第一步,输入3个正实数a,b,c.第二步,判断a+b>c,b+c>a,c+a>b是否同时成立.若是,则存在这样的三角形;否则,不存在这样的三角形.程序框图如右图:随堂练习1、设计算法判断一元二次方程ax2+bx+c=0是否有实数根,并画出相应的程序框图. 相应的程序框图如右:2、(1)设计算法,求ax+b=0的解,并画出流程图.程序框图如下:第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的值,并画出程序框图.(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.设计感想本节是前面内容的概括和总结,在回忆前面内容的基础上,选择经典的例题,进行了详尽的剖析,这样降低了学生学习的难度.另外,本节的练习难度适中,并且多为学生感兴趣的问题,这样为学生学好本节内容作好充分准备,希望大家喜欢这一节课.。
《程序框图与算法的基本逻辑结构》 讲义
《程序框图与算法的基本逻辑结构》讲义一、什么是程序框图程序框图,也叫流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。
它就像是一张地图,指引着计算机按照特定的步骤去解决问题。
程序框图由一些图形符号和连接这些符号的线组成。
这些图形符号都有着特定的含义,比如矩形表示处理框,用于赋值、计算;菱形表示判断框,用于判断条件是否成立;箭头线则表示流程的走向。
通过程序框图,我们可以清晰地看到算法的执行过程,发现其中可能存在的问题,并且方便与他人交流和理解算法的思路。
二、算法的基本逻辑结构算法的基本逻辑结构主要有三种:顺序结构、条件结构和循环结构。
1、顺序结构顺序结构是最简单的逻辑结构,就像我们按照先后顺序做事情一样,依次执行各个步骤。
在程序框图中,顺序结构表现为各个步骤按照从上到下的顺序依次执行,没有分支和跳转。
例如,要计算两个数的和,先输入两个数 a 和 b,然后进行相加计算 c = a + b,最后输出结果 c。
这就是一个典型的顺序结构。
2、条件结构条件结构是根据条件是否成立来选择不同的执行路径。
就好比我们在岔路口,根据不同的情况选择不同的道路。
条件结构分为两种:单分支结构和双分支结构。
单分支结构只有一个分支,如果条件成立,就执行某个操作;如果条件不成立,则直接跳过该操作,继续执行后续的步骤。
双分支结构有两个分支,如果条件成立,执行一个操作;如果条件不成立,执行另一个操作。
比如,判断一个数是否为正数,如果是正数就输出“该数为正数”,否则输出“该数不是正数”,这就是一个双分支的条件结构。
3、循环结构循环结构是指在一定条件下,反复执行某段程序。
它就像我们不断重复做一件事情,直到满足某个条件才停止。
循环结构分为两种:当型循环和直到型循环。
当型循环是当条件成立时,反复执行循环体;直到型循环是先执行一次循环体,然后判断条件是否成立,如果不成立则继续执行循环体,直到条件成立为止。
例如,计算 1 到 100 的整数和,我们可以使用循环结构,从 1 开始,每次累加一个数,直到加到 100 为止。
《程序框图与算法的基本逻辑结构》 讲义
《程序框图与算法的基本逻辑结构》讲义一、引言在当今数字化的时代,计算机程序已经深入到我们生活的方方面面。
从智能手机中的各种应用,到工业生产中的自动化控制,无一不是通过程序来实现的。
而程序的核心就是算法,算法的设计和表达则离不开程序框图。
程序框图是一种直观、清晰地展示算法流程的工具,它能够帮助我们更好地理解和设计算法。
在这篇讲义中,我们将深入探讨程序框图与算法的基本逻辑结构。
二、程序框图的基本概念程序框图,又称为流程图,是用一些规定的图形、流程线及文字说明来准确、直观地表示算法的图形。
它由一些图形符号和连接这些符号的流程线组成。
常见的图形符号包括:1、起止框:表示算法的开始和结束,通常是一个圆角矩形。
2、输入输出框:用于表示数据的输入或输出,一般是一个平行四边形。
3、处理框:用于表示对数据的处理操作,如计算、赋值等,是一个矩形。
4、判断框:用于根据条件决定程序的流向,是一个菱形。
5、流程线:用于连接各个图形符号,表示算法的执行顺序。
通过这些图形符号的组合和连接,我们可以清晰地展示算法的步骤和逻辑。
三、算法的基本逻辑结构算法的基本逻辑结构主要有三种:顺序结构、选择结构和循环结构。
1、顺序结构顺序结构是最简单的算法结构,也是最基本的结构。
在顺序结构中,算法的执行按照从上到下的顺序依次进行,每一个步骤都必须在前一个步骤完成后才能执行。
例如,要计算两个数的和,首先输入两个数 a 和 b,然后进行相加运算 c = a + b,最后输出结果 c。
这个过程就是按照顺序结构进行的。
2、选择结构选择结构也称为条件结构,是根据给定的条件进行判断,然后根据判断的结果决定执行不同的分支。
例如,判断一个数是否为正数,如果是正数则输出“该数为正数”,否则输出“该数为非正数”。
这里就用到了选择结构,通过判断条件来决定输出不同的结果。
3、循环结构循环结构是指在一定条件下,重复执行一段算法。
循环结构分为当型循环和直到型循环。
当型循环是在满足条件时执行循环体,直到条件不满足时退出循环。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Y Y 条件 N 条件 N 模块A 模块A 模块B
循环结构:只要条件成立,重复执行循环模块, 循环结构:只要条件成立,重复执行循环模块, 循环模块有时执行多次、有时一次也不执行。 循环模块有时执行多次、有时一次也不执行。 它有其它几种形式: 它有其它几种形式:
循环模块 条件 Y 条件 N Y 循环模块
1
否 r=0?
是
输出“n不是质数” 输出“ 不是质数”
输出“n是质数” 输出“ 是质数”
结束
开始
输入n
i=1
求用n除以i的余数r
i=i+1
i>n或r=0? 1
否
1
否 r=0?
是
输出n的因数i
i不是n的因数
结束
2.算法的基本逻辑结构 2.算法的基本逻辑结构
由于使用流程图编写算法, 由于使用流程图编写算法,流程线没有严格 限制,可以任意转向,流程图有时难以阅读, 限制,可以任意转向,流程图有时难以阅读, 为了提高算法的易读性,提高算法质量, 为了提高算法的易读性,提高算法质量,在 1966年Bohra和Jacopini提出了思想 提出了思想: 1966年Bohra和Jacopini提出了思想:以顺 序、选择、循环三种基本结构为基础来表示 选择、 算法的基本单元。 算法的基本单元。
直到型
开始 i=1 S=0 S=S+i i=i+1 是
i>100?
否
结束 输出S 输出
当型循环结构
开始 i=1 S=0 i=i+1 S=S+i 是
i≤100?
否 输出S 输出
结束
例7
工厂2005年的年生产总值为 年的年生产总值为200万元 技术革新后预计 万元,技术革新后预计 工厂 年的年生产总值为 万元 以后每年的年生产总值比上一年增长5%.设计一个程 以后每年的年生产总值比上一年增长 设计一个程 序框图,输出预计年生产总值超过 输出预计年生产总值超过300万元的最早年份 万元的最早年份. 序框图 输出预计年生产总值超过 万元的最早年份
Y
N
存在这样的三角形
不存在这样的三角形
结束
例5
Байду номын сангаас
试设计一个求一元二次方程 ax 的根的算法,并画出流程图。 的根的算法,并画出流程图。
2
+ bx + c = 0
算法
第一步,输入三个系数,a, b, c. 第二步,计算 ∆ = b
2
− 4ac
第三步,判断∆<0是否成立,若成立,则方程 无实数解,算法结束; 若不成立,则令
第一步,输入三个正实数a, 算法 第一步,输入三个正实数a, b, c. 第二步,判断a + b > c且a + c > b c且 第二步,判断a a是否成立 是否成立. 且b + c > a是否成立.若成立则存 在,反之不存在. 反之不存在.
程序框图
开始 输入a 输入 ,b ,c
a+b>c且b+c>a 且 且a+c>b 是否成立
N
注:循环结构的算法的设计主要是要寻找规律,寻找 循环结构的算法的设计主要是要寻找规律, 中那些有规律的代码段,可以重复执行的代码段。 中那些有规律的代码段,可以重复执行的代码段。
例3
已知一个三角形三条边的边长分别为 ,c,利用海伦 利用海伦a ,b ,c,利用海伦-秦九韶公式设计一个计 算三角形面积的算法,并画出程序框图表示. 算三角形面积的算法,并画出程序框图表示.
−b+ ∆ −b− ∆ x1 := , x2 := 2a 2a
第四步, 输出 x1, x 2
流程图如示: 流程图如示:
开始
输入a,b,c 输入
计算∆:=b2-4ac 计算
∆<0
x1 :=
−b + ∆ −b − ∆ , x2 := 2a 2a
输出x 输出 1,x2
输出无实数解
结束
例6
设计一个算法计算自然数1+2+3+…+99+100 设计一个算法计算自然数 的和.并写出程序框图 并写出程序框图. 的和 并写出程序框图 Until语句算法 语句算法: 语句算法 第一步,令 第一步 令i=1,S=0 第二步,S=S+i 第二步 第三步,i=i+1 第三步 第四步,判断 是否成立,若成立则输 第四步 判断i>100是否成立 若成立则输 判断 是否成立 若不成立,则执行第 出S;若不成立 则执行第 若不成立 二步. 二步
开始 f( x)=x2-2
程序框图
顺 序 结 构
1
循 环 结 构
2 3 否
输入精确度ε 输入精确度 和初值a, 和初值 b
|a-b|<ε?
a+b m= 2
是
输出a和 输出 和b
f (m)=0?
是
否
f( a) f( m)>0?
否 b= m
输出m 输出
是 a=m 1 2 3
作业:习题 作业 习题1.1 习题 A组 B组 组 组
算法
While语句算法 语句算法: 语句算法 第一步,令 第一步 令i=1,S=0 第二步,若 成立,则输出 结束算法, 第二步 若i>100成立 则输出 结束算法 成立 则输出S,结束算法 否则执行第三步. 否则执行第三步 第三步,S=S+i 第三步 第四步,i=i+1,返回第二步 返回第二步. 第四步 返回第二步
开始 输入a 输入 ,b ,c p=(a+b+c)/2
S= p( p − a)( p − b)( p − c)
输出S 输出
结束
例4
任意给定三个正实数,设计一个算法 判 任意给定三个正实数 设计一个算法,判 设计一个算法 断以这三个正实数为三边边长的三角 形是否存在,并画出这个算法的程序框 形是否存在 并画出这个算法的程序框 图.
顺序结构:总是执行上面模块A 顺序结构:总是执行上面模块A,再 执行下面的模块B 执行下面的模块B,顺序从上向下执 模块A 模块B 行。模块A、模块B中又可以有其他结 构。
模块A 模块
模块B 模块
传统流程图
根据条件是否成立,从模块A、 选择结构:根据条件是否成立,从模块 、 模块B中选择其中一块执行。模块 、模块B 模块 中选择其中一块执行。模块A、模块 中选择其中一块执行 只有一块执行。它有其它几种形式: 只有一块执行。它有其它几种形式:
算法
设年份为n,年生产量为 增长量为 设年份为 年生产量为a,增长量为 年生产量为 增长量为t 第一步,令 则,第一步 令n= 2005,a= 200 第一步 第二步,计算 第二步 计算 t = 5%a 第三步,a= a + t, n= n + 1 第三步 第四步,判断 是否成立?若成 第四步 判断a>300是否成立 若成 判断 是否成立 立输出n,若不成立 若不成立,返回第二步 立输出 若不成立 返回第二步
处理框
框内标明所进行的处理
判别框
框内标明条件,并在框外标明条件 成立或不成立时的两种不同流向。
流程线
表示从某一框到另一框的流向
连接点
连接程序框图的两个部分
开始
输入n 输入
i=2
求n除以i的余数r 除以i的余数r
i的值增加1, 的值增加1, 仍用i 仍用i表示
i>n-1或r=0? 或 是
1
否
算法:第一步 输入三角形的边长 算法 第一步,输入三角形的边长 ,b ,c 第一步 输入三角形的边长a 第二步,计算 第二步 计算p=(a+b+c)/2 计算 第三步,计算 第三步 计算 S = 第四步,输出 第四步 输出S 输出
p ( p − a )( p − b)( p − c)
程序框图: 程序框图
开始
n=2005 否
1
a>300?
a=200
2 2
是
t=5%a 输出n 输出 a=a + t
结束 n=n+1
1
3.程序框图的画法 程序框图的画法 设计一个算法框图通常要经过一下步骤: 设计一个算法框图通常要经过一下步骤 第一步,用自然语言表述算法步骤 第一步 用自然语言表述算法步骤 第二步,确定每一个步骤所包含的逻辑结 第二步 确定每一个步骤所包含的逻辑结 并用相应的程序框图表示,得到该步骤 构,并用相应的程序框图表示 得到该步骤 并用相应的程序框图表示 的程序框图 第三步,将所有步骤的程序框图用流程线 第三步 将所有步骤的程序框图用流程线 连接起来,并加上终端框 并加上终端框,得到整个算法的 连接起来 并加上终端框 得到整个算法的 程序框图. 程序框图
1.程序框图 1.程序框图
程序框图又称流程图,是一种用程序框、流 程线及文字说明来表示算法的图形。 在程序框图中,一个或几个程序框图的组 合表示算法中的一个步骤;带有方向箭头 的流程线将程序框连接起来,表示算法步 骤的执行顺序。
起止框
表示一个算法的开始或结束
输入、 输入、输出框
框内标明输入、输出的内容