课件32张PPT。§1.1.2 程序框图与算法的基本逻辑结构 课前复习算法知识探究(一):算法的程序框图2. 我们将上述算法如下表示:算法的基本逻辑结构:第一步,输入三角形三条边的边长a,b,c. 第二步,计算 . 第三步,计算 .第四步,输出S. 3. 将上述算法的用程序框图表示知识探究(三):算法的条件结构1.在某些问题的算法中,有些步骤只有在一定条件下才会被执行,算法的流程因条件是否成立而变化。在算法的程序框图中,由若干个在一定条件下才会被执行的步骤组成的逻辑结构,称为条件结构,用程序框图可以表示为下面两种形式:3.请画出这个算法的程序框图。 3.练习题理论迁移算法分析:第一步,输入三个系数a,b,c.第二步,计算△=b2-4ac.程序框图:练习题知识探究(四):算法的循环结构第一步,令i=1,S=0.第二步,计算S+i,仍用S表示.第三步,计算i+1,仍用i表示.第一步, 输入2005年的年生产总值.第二步,计算下一年的年生产总值.算法分析:(3)控制条件:当“a>300”时终止循环.(2)初始值:n=2005,a=200.循环结构:程序框图:1.顺序结构的程序框图的基本特征:小 结(2)各程序框从上到下用流程线依次连接.(2)条件结构的程序框图各有两种形式.2.条件结构的程序框图的基本特征:小 结(2)循环结构的程序框图各有两种形式.3.循环结构的程序框图的基本特征:小 结作业:
完成《学海导航》P4-9.课件31张PPT。1.1.2 程序框图与算法 的基本逻辑结构 第三课时顺序结构依次
无判断
无返回条件结构判断二选一选不选循环结构(3)循环结构---在一些算法中,也经常会出现从某处开始,按照一定条件,反复执行某一步骤的情况,这就是循环结构.反复执行的步骤称为循环体.注意:循环结构不能是永无终止的“死循环”,一定要在某个条件下终止循环,这就需要条件结构来作出判断,因此,循环结构中一定包含条件结构.循环结构用程序框图可表示为:(2)循环结构分为两种------当型和直到型.直到型循环在执行了一次循环体之后,对条件进行判断,如果条件不满足就执行循环体,直到条件满足时终止循环.(反复执行循环体,直到条件满足)当型循环在每次执行循环体前对条件进行判断,当条件满足时执行循环体,否则终止循环;(当条件满足时反复执行循环体)?判断直到型当型顺序结构用程序框图来表示算法,有三种不同的基本逻辑结构:条件结构循环结构直到型循环结构2.循环结构有几种形式?他们的各自特征是什么吗? 区别:循环结构具有重复性;条件结构具有选择性,不重复性。1.条件结构和循环结构有什么区别和联系?联系:循环结构中一定包含条件结构,用于确定何时终止执行循环体;条件结构中不含循环结构.第四步,判断“i>100”是否成立.
若是,则输出S,结束算法;
否则,返回第二步.第一步,令i=1,S=0.第二步,计算S+i,仍用S表示.第三步,计算i+1,仍用i表示.思考1:计算1+2+3+…+100的值的算法,并画 出程序框图。算法分析:知识探究(一):循环结构的程序框图思考2:用直到型循环结构,上述算法的程序框图如何表示?思考3:用当型循环结构,上述算法的程序框图如何表示?第二步,判断i≤100是否成立.
若是,则执行第三步;
否则,输出S,结束算法.第一步,令i=1,S=0.第三步,计算S+i,仍用S表示.第四步,计算i+1,仍用i表示,
返回第三步.思考4:观察两个程序框图,直到型循环结构与当型循环结构如何转化?初始值循环体终止条件说明:(1)一般地,循环结构中都有一个计数变量和累加变量.计数变量用于记录循环次数,同时它的取值还用于判断循环是否终止,累加变量用于输出结果.累加变量和计数变量一般是同步执行的,累加一次,记数一次.(2)循环结构分为两种------当型和直到型. 当型循环在每次执行循环体前对循环条件进行判断,当条件满足时执行循环体,不满足则停止;(当条件满足时反复执行循环体) 直到型循环在执行了一次循环体之后,对控制循环条件进行判断,当条件不满足时执行循环体,满足则停止.(反复执行循环体,直到条件满足)变式1: 右边的程序框图输出S=————?9变式2:右边的程序框图,
输出S=———?题型一:程序框图的阅读与理解14题型二:程序框图的补充1、求 的值。设计的算法框图如右,应该在空格位置填入什么条件?分析:空格位置判断条件,应该考虑循环的终止条件是什么?应该填入:i>10 例2 某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%.设计一个程序框图,输出预计年生产总值超过300万元的最早年份.第三步,判断所得的结果是否大于300. 若是,则输出该年的年份; 否则,返回第二步.第一步, 输入2005年的年生产总值.第二步,计算下一年的年生产总值.算法分析:(3)控制条件:当“a>300”时终止循环.(1)循环体:设a为某年的年生产总值, t为年生产总值的年增长量,n为年份,则t=0.05a,a=a+t,n=n+1.(2)初始值:n=2005,a=200.循环结构:程序框图:循环结构:是否a≤300?当型循环结构程序框图思考1:用“二分法”求方程 的近似解的算法如何设计? 知识探究(二):混合逻辑结构的程序框图第一步,令f(x)=x2-2,给定精确度d. 第二步,确定区间[a,b],满足f(a)·f(b)<0. 第三步,取区间中点 . 第四步,若f(a)·f(m)<0,则含零点的区间为[a,m];否则,含零点的区间为[m,b].将新得到的含零点的区间仍记为[a,b]. 第五步,判断[a,b]的长度是否小于d或f(m)是否等于0.若是,则m是方程的近似解;否则,返回第三步. 思考2:该算法中哪几个步骤可以用顺序结构来表示?这个顺序结构的程序框图如何?思考3:该算法中第四步是什么逻辑结构?这个步骤用程序框图如何表示?是思考3:该算法中第五步是什么逻辑结构?这个步骤用程序框图如何表示?思考5:根据上述分析,你能画出表示整个算法的程序框图吗?小结作业3.设计一个算法的程序框图的基本思路:第二步,确定每个算法步骤所包含的逻辑结构,并用相应的程序框图表示.第一步,用自然语言表述算法步骤.第三步,将所有步骤的程序框图用流程线连接起来,并加上两个终端框.首先确定循环体,再根据循环体第一步确定初值,
最后一步确定循环终止条件。1.循环结构三要素:循环变量赋初值、循环体、循环终止条件2.循环三要素确定过程:(P20BT2).某高中男子体育小组的50m跑成绩(单位:s)为: 6.4, 6.5, 7.0, 6.8, 7.1, 7.3, 6.9, 7.4, 7.5.
设计一个算法,从这些成绩中搜出小于6.8s的成绩.算法分析:第一步:把计数变量n的初值设为1.
第二步:输入一个成绩r,判断r与6.8的大小.若r≥6.8,则执行下一步;若r<6.8,则输出r,并执行下一步.
第三步:使计数变量n的值增加1.
第四步:判断计数变量n与成绩个数9的大小;若n≤9,则返回第二步;若n>9,则结束.开始n=1程序框图输入rr≥6.8?是n=n+1n>9?是否输出r否结束直到型循环结构课件22张PPT。1.1.1 算法的概念 假设家中生火泡茶有以下几个步骤:
a.生火 b.将水倒入锅中 c.找茶叶
d.洗茶壶茶碗 e.用开水冲茶
请选出一个最优方案( )
A.abcde B.bacde C.cadbe D.dcabe 背景广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等. 讨论
算法(algorithm)这个词出现于12世纪,指的是用阿拉伯数字进行算术运算的过程。在数学中, “算法”通常是指按照一定规则解决某一类问题的明确的和有限的步骤.现在,算法通常可以变成计算机程序,让计算机执行并解决问题.据说英文algorithm来源于阿拉伯数学家花拉子米的拉丁译名Algoritmi 算法的概念明确性有效性有限性 例1:一位商人有9枚银元,其中有1枚略轻的是假银元.你能用天平(不用砝码)将假银元找出来吗?说出算法. 例题 例题例 2:(1)设计一个算法,判断7是否为质数。第一步,用2除7,得余数1,因为余数不是0,所以2不能除7.
第二步,用3除7,得余数1,因为余数不是0,所以3不能除7.
第三步,用4除7,得余数3,因为余数不是0,所以4不能除7.
第四步,用5除7,得余数2,因为余数不是0,所以5不能除7.
第五步,用6除7,得余数1,因为余数不是0,所以6不能除7.
变式:设计一个算法,判断35是否为质数。第一步,用2除35,得余数1,因为余数不是0,所以2不能除35.
第二步,用3除35,得余数2,因为余数不是0,所以3不能除35.
第三步,用4除35,得余数3,因为余数不是0,所以4不能除35.
第四步,用5除35,得余数0,因为余数是0,所以5能除35.
因此,35不是质数.
变式: 任意给定一个大于2的整数n,试设计一个程序或步骤对n是否为质数做出判断。 例题第一步:给定大于2的整数n.第二步:令i=2第三步:用i除n,得到余数r.第四步:判断”r=0”是否成立,若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示,即:i=i+1.第五步:判断”i>(n-1)”是否成立,若是,则n是质数,结束算法;否则,将返回第3步. 1.任意给定一个正实数a,试设计一个算法求以a为直径的圆的面积.第一步:输入a的值.第二步:________________________.
第三步:________________________.
第四步:输出圆的面积的值.解: 练习计算 计算 2. 已知平面直角坐标系的两点A(-1,0),
B(3,2),写出求直线AB斜率的一个算法. 我们将上述算法用下面的图形表示: 上述表示算法的图形称为算法的程序框图,又称流程图,其中的多边形叫做程序框,带方向箭头的线叫做流程线,你能指出程序框图的含义吗? 用程序框、流程线及文字说明来表示算法的图形. 终端框 (起止框) 输入、输出框 处理框 (执行框) 判断框 流程线 表示一个算法的起始和结束 表示一个算法输入和输出的信息 赋值、计算 判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N” 连接程序框,表示算法步骤的执行顺序 思考:在逻辑结构上,“判断整数n(n>2)是否为质数”的程序框图由几部分组成?算法的顺序结构 任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为顺序结构,用程序框图可以表示为:例3:若一个三角形的三条边长分别为a,b,c,令 ,则三角形的面积
.你能利用这个公式设计一个计算三角形面积的算法步骤吗?第一步,输入三角形三条边的边长 a,b,c. 第二步,计算 . 第三步,计算 .第四步,输出S. 例题思考:上述算法的程序框图如何表示? 例4:一个笼子里装有鸡和兔共m只,且鸡和兔共n只脚,设计一个计算鸡和兔各有多少只的算法,并画出程序框图表示.算法分析: 第一步,输入m,n.第二步,计算鸡的只数 .第三步,计算兔的只数y=m-x.第四步,输出x,y. 例题程序框图: 例5:已知下图是“求一个正奇数的平方加5的值”的程序框图,若输出的数是30,求输入的数n的值. 练习开始结束输出x,yx= yz = xy= z若x=1,y=2,输出结果是什么?算法的特征是什么?明确性有效性有限性算法的概念:算法通常指可以用来解决的某一类问题的步骤或程序,这些步骤或程序必须是明确的和有效的,而且能够在有限步之内完成的. 小结顺序结构的程序框图的基本特征:(2)各程序框从上到下用流程线依次连接. (1)必须有两个起止框,穿插输入、 输出框和处理框,没有判断框.(3)处理框按计算机执行顺序沿流程线依次排列. 小结