1.1.2程序框图与算法的基本逻辑结构第1课时程序框图、顺序结构通过阅读此购物流程图,你在网上浏览宝贝后有几种方式来确定订单?提示:有两种方式:一是立即购买,二是放入购物车然后购买.如果此购物流程不是框图形式,而是一系列的文字说明,你有何感受?由此,你是否感受到了直观图示的优势呢?我们可以用自然语言表述一个算法,但往往过程复杂,缺乏简洁性.因此,我们有必要探究能使算法表达得更加直观、准确的方法,这个想法可以通过本节课所要学习的程序框图来实现.1.掌握程序框图的概念.(重点)2.会用通用的图形符号表示算法,掌握算法的顺序结构.(重点)3.掌握画程序框图的基本规则,能正确画出程序框图.(难点)算法的程序框图“判断整数n(n2)是否为质数”的算法步骤【课堂探究1】第一步,给定一个大于2的整数n;第二步,令i=2;第三步,用i除n,得到余数r;第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示;第五步,判断“i(n-1)”是否成立,若是,则n是质数,结束算法;否则,返回第三步.我们可以将上述算法用右边的程序框图表示开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示是是结束否否i(n-1)或r=0?上述表示算法的图形称为算法的程序框图,又称流程图,其中的多边形叫做程序框,带方向箭头的线叫做流程线,你能指出程序框图的含义吗?用程序框、流程线及文字说明来表示算法的图形.思考1:在上述程序框图中,有4种程序框,2种流程线,它们分别有何特定的名称和功能?开始r=0?输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示in-1或r=0?是是结束否否输出“n是质数”以下图为例讲解:开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示是是结束否否in-1或r=0?终端框(起止框)终端框(起止框)表示一个算法的起始和结束.开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示是是结束否否in-1或r=0?输入、输出框输入、输出框表示一个算法输入和输出的信息开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示是是结束否否in-1或r=0?处理框(执行框)处理框(执行框)赋值、计算开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示是是结束否否in-1或r=0?判断框判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”.流程线连接程序框连接点连接程序框图的两部分开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示是是结束否否in-1或r=0?现在你对基本的程序框、流程线及其功能有了新的认识了吗?图形符号名称功能终端框(起止框)输入、输出框处理框(执行框)判断框流程线表示一个算法的起始和结束表示一个算法输入和输出的信息赋值、计算判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”连接程序框连接点连接程序框图的两部分思考2:在逻辑结构上,“判断整数n(n2)是否为质数”的程序框图由几种组成?循环结构顺序结构条件结构开始输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示是是结束否否输出“n是质数”in-1或r=0?r=0?算法的顺序结构任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为顺序结构.顺序结构是任何一个算法都离不开的基本结构,用程序框图可以表示为:【课堂探究2】思考:除了用程序结构图来描述算法还有其他类型的结构图吗?步骤n步骤n+1例已知一个三角形的三条边的边长分别为a,b,c,利用海伦—秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.算法步骤如下:第一步,输入三角形三条边的边长a,b,c.第二步,计算第三步,计算a+b+cp=.2S=p(p-a)(p-b)(p-c).第四步,输出S.算法分析:这是一个简单的问题,只需先算出p的值,再将它代入公式,最后输出结果.因此只用顺序结构就能表达出算法.上述算法的程序框图如何表示?开始结束输出S输入a,b,c2abcp()()()Sppapbpc程序框图f(x)=y=x2-2x-3.求f(3),f(-5),f(5),并计算f(3)+f(-5)+f(5)的值.设计出解决该问题的一个算法,并画出程序框图.分析:把3,-5,5依次代入求值,画程序框图用顺序结构即可.【变式练习】解:将3,-5,5代入可求,f(3)=32-2×3-3=0,f(-5)=(-5)2-2×(-5)-3=32,f(5)=52-2×5-3=12,f(3)+f(-5)+f(5)=0+32+12=44.算法如下:第一步,令x=3;第二步,把x=3代入y1=x2-2x-3;第三步,令x=-5;第四步,把x=-5代入y2=x2-2x-3;第五步,令x=5;第六步,把x=5代入y3=x2-2x-3;第七步,把y1,y2,y3的值代入y=y1+y2+y3;第八步,输出y1,y2,y3,y的值.该算法对应的程序框图如图所示:1.给出一个问题,设计算法的步骤:(1)认真分析问题,联系解决此问题的一般数学方法.(2)综合考虑此类问题中可能涉及的各种情况.(3)将解决问题的过程划分为若干个步骤.(4)用简练的语言将各个步骤表示出来.【提升总结】2.画程序框图的规则:(1)使用标准的框图符号.(2)框图一般按从上到下、从左到右的方向画.(3)除判断框外,大多数程序框图中的程序框只有一个进入点和一个退出点,判断框是具有超过一个退出点的惟一符号.(4)在图形符号内描述的语言要非常简练清楚.1.(2014·吉林高一检测)在程序框图中,表示判断框的图形符号是()【解析】选C.四个选项中的程序框依次为处理框,输入、输出框,判断框和起止框.2.对顺序结构,下列说法:①是最基本、最简单的算法结构;②框与框之间是依次进行处理的;③除输入、输出框之外,中间过程都是处理框;④可以从一个框图跳到另一个框图执行;其中正确的有()A.4个B.3个C.2个D.1个B3.以下给出对流程图的几种说法:①任何一个流程图都必须有起、止框;②输入框只能紧跟在开始框后,输出框只能放在结束框前;③判断框是唯一具有超过一个退出点的符号;④对于一个程序来说,判断框内的条件表达方法是唯一的.其中正确说法的个数是()A.1B.2C.3D.4B【解析】选B.由流程图中符号意义知任何一个流程图都必须有起、止框,故①正确.输入、输出框可用在算法中任何需要输入、输出的位置,故②错误.判断框是唯一具有超过一个退出点的符号,故③正确.判断框内条件不唯一,故④错误.4.如图所示的程序框图的运行结果是________.525.一个笼子里装有鸡和兔共m只,且鸡和兔共n只脚,设计一个计算鸡和兔各有多少只的算法,并画出程序框图表示.算法分析:第一步,输入m,n.第二步,计算鸡的只数第三步,计算兔的只数y=m-x.第四步,输出x,y.4m-nx=.2开始结束输出x,y输入m,n42mnxy=m-x程序框图:顺序结构程序框图用程序框、流程线及文字说明来表示算法的图形顺序结构的程序框图的基本特征:(1)必须有两个起止框,穿插输入、输出框和处理框,没有判断框.(2)各程序框从上到下用流程线依次连接.(3)处理框按计算机执行顺序沿流程线依次排列.看似平坦的成功之路往往是由无数失败的石头加之努力的柏油铺成的.