112程序框图(精品).ppt
1 1、算法的概念?、算法的概念?算法通常是指可以用计算机来解决的某一类算法通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是问题的程序或步骤,这些程序或步骤必须是明明确的确的和和有效的有效的,而且能够在,而且能够在有限有限步之内完成。步之内完成。(1 1)有限性)有限性 (2 2)明确性)明确性 (3 3)有效性)有效性 (4 4)普遍性)普遍性(5 5)不唯一性)不唯一性.2 2、算法的特征?、算法的特征?判断判断19971997是否为质数的算法如下是否为质数的算法如下:第一步第一步,令令i=2;i=2;第二步第二步,用用i i除除1997,1997,得到余数为得到余数为r;r;第三步第三步,判断判断r r是否为是否为0.0.若是若是,则则19971997是质数是质数,结束算法结束算法;否则把否则把i i的值增加的值增加1 1仍记为仍记为i i;第四步第四步,判断判断”i1996i1996”是否成立是否成立.若是若是,则则19971997是质数是质数,结束算法结束算法;若否若否,返回第二步。返回第二步。任意给定一个大于任意给定一个大于2 2的整数的整数n n,试设计一,试设计一个程序或步骤对个程序或步骤对n n是否为质数作出判断。是否为质数作出判断。第二步:令第二步:令i=2i=2;第三步:用第三步:用i i除除n n得到余数得到余数r r,判断余数,判断余数r r是否为是否为0 0,若是,则若是,则n n不是质数,若不是,则将不是质数,若不是,则将i i的值增加的值增加1 1,仍用仍用i i表示。表示。探究探究解:第一步:给定一个大于解:第一步:给定一个大于2 2的整数;的整数;第四步:判断第四步:判断i i是否大于(是否大于(n-1n-1),若是,则),若是,则n n是是质数,若不是,则返回第三步。质数,若不是,则返回第三步。例例2.2.用二分法设计一个求方程用二分法设计一个求方程 x2-2=0 的近似根的近似根的算法的算法.第一步:令第一步:令f(x)=x2-2,因为因为f(1)0,所所以设以设a=1,b=2.第二步:令第二步:令m=,判断判断f(m)是否为是否为0.若是,若是,则则m为所求;若否,则继续判断为所求;若否,则继续判断f(a)f(m)大于大于0还是小于还是小于0.第三步:若第三步:若f(a)f(m)0,则令,则令a=m;否则,令否则,令b=m.第第四四步步:判判断断|a-b|2004那么那么即即为为所求;所求;否则让否则让 的值增加的值增加1 1后,后,请设计一个算法,求满足条件的最小整数请设计一个算法,求满足条件的最小整数 取取等于等于1 1;计计算算 ;如果如果的的值值大于大于20042004,转转到到 重复操作重复操作 算法可以用自然语言来描述,但为了算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表示它我们更经常地用图形方式来表示它,即画即画流程图流程图的方法来表示的方法来表示.开始开始输入输入n计算 的值2004Y使使n的的值值增增加加1输出输出n结束结束N用用流流程程图图表表示示1 1、程序框图程序框图的概念的概念 程程序序框框图图又又称称流流程程图图,是是一一种种用用规规定定的的程程序序框框、流流程程线线及及文文字字说说明明来来准准确确、直直观观地地表表示算法的图形。示算法的图形。一个程序框图包括以下几部分:表示相应一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外操作的程序框;带箭头的流程线;程序框外必要的文字说明。必要的文字说明。图形符号图形符号名名 称称功功 能能终端框(起止框)终端框(起止框)一个算法的起始和结束一个算法的起始和结束输入、输出框输入、输出框一个算法输入和输出的信息一个算法输入和输出的信息处理框(执行框)处理框(执行框)赋值、计算赋值、计算判断框判断框判断某一条件是否成立,出判断某一条件是否成立,出口成立标口成立标“是是”不成立标不成立标“否否”流程线流程线连接程序框连接程序框连接点连接点连接程序框图的两部分连接程序框图的两部分或或2 2、构成程序框的图形符号及其作用、构成程序框的图形符号及其作用任意给定一个大于任意给定一个大于2 2的整数的整数n n,试设计一,试设计一个程序或步骤对个程序或步骤对n n是否为质数作出判断。是否为质数作出判断。第二步:令第二步:令i=2i=2;第三步:用第三步:用i i除除n n得到余数得到余数r r,判断余数,判断余数r r是否为是否为0 0,若是,则若是,则n n不是质数,若不是,则将不是质数,若不是,则将i i的值增加的值增加1 1,仍用仍用i i表示。表示。探究探究解:第一步:给定一个大于解:第一步:给定一个大于2 2的整数;的整数;第四步:判断第四步:判断i i是否大于(是否大于(n-1n-1),若是,则),若是,则n n是是质数,若不是,则返回第三步。质数,若不是,则返回第三步。开始开始输入输入ni=2求求n除以除以i的余数的余数ri=i+1in或或r=0?n不是质数不是质数结束结束是是否否是是n是质数是质数否否r=0?顺序结构顺序结构思考:思考:用程序框图来表示算用程序框图来表示算法,有几种基本逻辑结构?法,有几种基本逻辑结构?条件结构条件结构循环结构循环结构程序框图的三种基本的逻辑结构程序框图的三种基本的逻辑结构顺序结构顺序结构条件结构条件结构循环结构循环结构3 3、算法的顺序结构、算法的顺序结构 任何一个算法各步骤之间都有明确的顺序性,任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由在算法的程序框图中,由若干个依次执行的步骤组若干个依次执行的步骤组成的成的逻辑结构,称为逻辑结构,称为顺序结构顺序结构,用程序框图可以表,用程序框图可以表示为:示为:步骤步骤n步骤步骤n+1在顺序结构中可能会在顺序结构中可能会用到哪几种程序框和用到哪几种程序框和流程线?流程线?思考?例例1:1:设计一算法:设计一算法:输入圆的半径输入圆的半径,输出圆的面积,输出圆的面积,并画出流程图并画出流程图算法分析:算法分析:开始结束输入半径r计算S=r输出面积S定义=3.14思考:整个程序框图有什么特点?思考:整个程序框图有什么特点?第一步第一步:输入任意一个正实数输入任意一个正实数r r;第二步第二步:计算圆的面积计算圆的面积:S=:S=r r2 2;第三步第三步:输出圆的面积输出圆的面积S.S.自上而下自上而下,依次执行。依次执行。顺序结构顺序结构 例例2:2:已知一个三角形的三已知一个三角形的三边长确分别为边长确分别为2,3,4,2,3,4,利用海利用海伧伧-秦九韶公式设计一个算法秦九韶公式设计一个算法,求出它的面积求出它的面积,画出算法的程画出算法的程序框图序框图.输出s结束开始第一步第一步:输入三角形三条边的边长输入三角形三条边的边长a,b,ca,b,c;第二步第二步:计算计算 ;第三步第三步:第四步第四步:输出输出S.S.输入2,3,4算法分析:算法分析:例例1 1:一个笼子里装有鸡和兔共:一个笼子里装有鸡和兔共m m只,且只,且鸡和兔共鸡和兔共n n只脚,设计一个计算鸡和兔各有多只脚,设计一个计算鸡和兔各有多少只的算法,并画出程序框图表示少只的算法,并画出程序框图表示.算法分析:算法分析:第一步,输入第一步,输入m m,n.n.第二步,计算鸡的只数第二步,计算鸡的只数 .第三步,计算兔的只数第三步,计算兔的只数y=y=m-xm-x.第四步,输出第四步,输出x x,y.y.开始开始结束结束输出输出x,y输入输入m,ny y=m-xm-x程序框图:程序框图:例例2 2:已知下图是:已知下图是“求一个正奇数的平方求一个正奇数的平方加加5 5的值的值”的程序框图,若输出的数是的程序框图,若输出的数是3030,求,求输入的数输入的数n n的值的值.开始开始结束结束输入正整数输入正整数n输出输出yy=x2+5x=2n-14、顺序结构的程序框图的基本特征:顺序结构的程序框图的基本特征:(2 2)各程序框从上到下用流程线依次)各程序框从上到下用流程线依次连接连接.(1 1)必须有两个起止框,穿插输入、输)必须有两个起止框,穿插输入、输出框和处理框,没有判断框出框和处理框,没有判断框.(3 3)处理框按计算机执行顺序沿流程线)处理框按计算机执行顺序沿流程线依次排列依次排列.1 1、程序框图的概念、程序框图的概念2 2、程序框图图例的名称和意义(作用)、程序框图图例的名称和意义(作用)3 3、如何用程序框图表示顺序结构的算法、如何用程序框图表示顺序结构的算法