程序框图(全国一等奖)_第1页
程序框图(全国一等奖)_第2页
程序框图(全国一等奖)_第3页
程序框图(全国一等奖)_第4页
程序框图(全国一等奖)_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.1.2程序框图与算法的基本逻辑结构(第1-3课时)1.算法的含义是什么?

在数学中,按照一定规则解决某一类问题的明确和有限的步骤称为算法.

二、新课引入,任务驱动①确定性②有穷性③可行性④普适性2.算法的特征是什么?一.复习回顾:我们可以用自然语言表述一个算法,但往往过程复杂,缺乏简洁性,因此,我们有必要探究使算法表达得更加直观、准确的方法,这个想法可以通过程序框图来实现.三、新知建构,典例分析

一.程序框图:程序框图又称流程图,是一种用、及来表示算法的图形,其中的多边形叫做,带方向箭头的线叫做。自主学习教材P6的内容,思考并解决下列问题:1.什么是程序框图?程序框流程线文字说明程序框流程线2.注意几个基本的程序框、流程线和它们表示的功能。终端框输入、输出框处理框判断框三、新知建构,典例分析

用程序框图表示的算法更加简练,直观,流向清楚.通常,程序框图由程序框和流程线组成.一个或几个程序框的组合表示算法中的一个步骤;流程线是方向箭头,按照算法进行的顺序将程序框连接起来.三、新知建构,典例分析

基本的程序框和它们各自表示的功能如下:图形符号名称功能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不”成立时标明“否”或“N”.判断框赋值、计算流程线连接程序框连接点连接程序框图的两部分开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示i>n-1或r=0?是是结束否否判断整数n(n>2)是否为质数的算法如何用程序框图表示?i=i+1i≤n-1且r≠0①i>n-1,r≠0②i≤n-1,r=0③i>n-1,r=0说明:i表示从2~(n-1)的所有正整数,用以判断例1步骤2是否终止,i是一个计数变量,有了这个变量,算法才能依次执行.逐步考察从2~(n-1)的所有正整数中是否有n的因数存在.一般用i=i+1表示.下列程序框图中的图框表示什么意思?开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数ri=2输入ni的值增加1,仍用i表示i>n-1或r=0?是是结束否否三、新知建构,典例分析

例题:三、新知建构,典例分析

2.以下给出对程序框图的几种说法:①任何一个程序框图都必须有起止框;②输入框只能放在起止框后,输出框只能放在起止框前;③判断框是唯一具有超过一个退出点的框图符号;④对于一个程序来说,判断框内条件的表达方法是唯一的.其中正确的说法的个数是()(A)1个 (B)2个 (C)3个 (D)4个三、新知建构,典例分析

例:判断“整数n(n>2)是否是质数”的算法算法步骤:程序框图:第一步,给定大于2的整数n.第二步,令i=2.第三步,用i除n,得到余数r.

第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则将i的值增加1,仍用i表示.

第五步,判断“i>(n-1)”是否成立.若是,则n是质数,结束算法;否则返回第三步.开始输入n求n除以i的余数i的值增加1,仍用i表示i>n-1或r=0?r=0?n不是质数n是质数结束否否是是i=2开始输入ni=2求n除以i的余数ri=i+1i≥n或r=0?n不是质数结束是否是n是质数否r=0?顺序结构用程序框图来表示算法,有三种不同的基本逻辑结构:条件结构循环结构 程序框图的三种基本的逻辑结构顺序结构条件结构循环结构三、新知建构,典例分析

二.算法的基本逻辑结构:求n除以i的余数ri的值增加1,仍用i表示i>n-1或r=0?是否r=0?N不是质数N是质数是否输入ni=2顺序结构循环结构条件结构算法千差万别,但都是由这三种基本逻辑结构构成的.你能说出这三种基本逻辑结构的特点吗?条件结构与循环结构有什么区别和联系?(1)顺序结构

顺序结构是由若干个依次执行的步骤组成的。它是任何一个算法都离不开的一种基本算法结构。步骤n步骤n+1示意图三、新知建构,典例分析

(2)条件结构在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.

分类是算法中经常发生的事情,条件结构的主要作用就是表示分类.

条件结构可用程序框图表示为下面两种形式.步骤A步骤B满足条件?否是步骤A满足条件?否是三、新知建构,典例分析

(2)条件结构

①条件结构是指在算法中通过对条件的判断,根据条件是否成立而选择不同流向的算法结构。它的一般形式是:pABYN三、新知建构,典例分析

(3)循环结构循环结构指的是按照一定的条件反复执行的某些算法步骤.反复执行的步骤称为循环体.循环体满足条件?否是循环体满足条件?否是执行一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.在每次执行循环体前,对条件进行判断,当条件满足,执行循环体,否则终止循环.直到型当型三、新知建构,典例分析

思考:用“二分法”求方程的近似解的算法如何设计?

第一步,令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是方程的近似解;否则,返回第三步.三.程序框图的画法:思考:该算法中哪几个步骤可以用顺序结构来表示?这个顺序结构的程序框图如何?f(x)=x2-2输入精确度d和初始值a,b思考:该算法中第四步是什么逻辑结构?这个步骤用程序框图如何表示?f(a)f(m)<0?b=m是a=m否思考:该算法中第五步是什么逻辑结构?这个步骤用程序框图如何表示?|a-b|<d或f(m)=0?输出m是否f(a)f(m)<0??a=mb=m是否思考:根据上述分析,你能画出表示整个算法的程序框图吗?开始结束f(a)f(m)<0??a=mb=m是否|a-b|<d或f(m)=0?输出m是否f(x)=x2-2输入精确度d和初始值a,b3.设计一个算法的程序框图的基本思路:第二步,确定每个算法步骤所包含的逻辑结构,并用相应的程序框图表示.第一步,用自然语言表述算法步骤.第三步,将所有步骤的程序框图用流程线连接起来,并加上两个终端框.首先确定循环体,再根据循环体第一步确定初值,最后一步确定循环终止条件。1.循环结构三要素:循环变量赋初值、循环体、循环终止条件2.循环三要素确定过程:三、新知建构,典例分析

三、新知建构,典例分析

2.典例分析:题型一利用顺序结构设计程序框图题型二设计含有条件结构的程序框图题型三设计含有循环结构的程序框图三、新知建构,典例分析

题型一利用顺序结构设计程序框图教材P9例3

已知一个三角形的三边长分别为a,b,c,利用海伦-秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.算法步骤:第一步,输入三角形三边长a,b,c第二步,计算第三步,计算第四步,输出s.程序框图:结束开始输入a,b,c输出s三、新知建构,典例分析

教材P10例4

任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图.

算法步骤如下:第一步,输入3个正实数a,b,c.第二步,判断a+b>c,a+c>b,b+c>a是否同时成立.若是,则存在这样的三角形;否则,不存这样的三角形.题型二设计含有条件结构的程序框图条件结构

教材P11例5设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示.算法步骤:第一步,输入3个系数a,b,c.第二步,计算△=b2-4ac.第四步,判断△=0是否成立.若是,则输出 x1=x2=p,否则,计算x1=p+q,x2=p-q, 并输出x1,x2.

第三步,判断△≥0是否成立.若是,则计 算;否则,输出“方程没有 实数根”,结束算法.开始程序框图:输入a,b,c△=b2-4ac△≥0?△=0?否x1=p+q输出x1,x2结束否是x2=p-q输出x1=x2=p是输出“方程没有实数根”教材P13例6设计一个计算1+2+3+…+100的值的算法,并画出程序框图.第一步:确定首数a,尾数b,项数n;第二步:利用公式“S=n(a+b)/2”求和;第三步:输出求和结果。算法1:开始结束输入a,b,nS=n(a+b)/2输出S题型三设计含有循环结构的程序框图开始i=1S=0i=i+1S=S+ii≤100?输出S结束否是例6设计一个计算1+2+3+…+100的值的算法,并画出程序框图.第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.……第100步,4950+100=5050.算法2:第一步,令i=1,S=0.

第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.

第三步,S=S+i.

第四步,i=i+1,返回第二步.当型循环结构(1)确定循环体:i=i+1s=s+i(2)初始化变量:i=1s=0(3)循环控制条件:i≤100结束s=s+ii=i+1i≤100?输出S否是i=0;S=0开始结束输出Si=0;S=0开始S=s+ii=i+1i>100?否是循环结构直到型结构当型结构例6设计一个计算1+2+3+…+100的值的算法,并画出程序框图.s=s+ii=i+1解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。直到型结构当型结构s=s+ii=i+1是否s=s+ii=i+1否是i≤100?i>100?请填上判断的条件。在解题的过程中,用累加变量S表示每一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=S+i,其中S的初始值为0,i依次取1,2,…,100.由于i同时记录了循环的次数,所以也称为计数变量.循环结构中都有一个计数变量和累加变量,计数变量用以记录循环次数,同时它的取值还用于判断循环是否终止,累加变量用于输出结果,累加变量和计数变量一般是同步执行的,累加一次,计数一次.

教材P15例7某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5℅.设计一个程序框图,输出预计年生产总值超过300万元的最早年份.算法步骤:第一步,输入2005年的年生产总值.第二步,计算下一年的年生产总值.第三步,判断所得的结果是否大于300.若是,则输出该年的年份;否则,返回第二步.结束开始输出na=200t=0.05a

a=a+tn=n+1a>300?Yn=2005N(1)确定循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则循环体为t=0.05a,a=a+t,n=n+1.(2)初始化变量:n=2005,a=200.(3)循环控制条件:a>300结束开始输入na=200t=0.05aa=a+tn=n+1a>300?Yn=2005N结束开始输入na=200t=0.05aa=a+tn=n+1a≤300?Nn=2005Y直到型当型题后反思:1、循环结构的特点2、循环结构的框图表示3、循环结构该注意的问题避免死循环的出现,设置好进入(结束)循环体的条件。当型和直到型重复同一个处理过程三、新知建构,典例分析

变式训练1-1:

利用梯形的面积公式计算上底为a,下底为b,高为h的梯形面积。设计出该问题的算法及程序框图。解:算法步骤(1)输入梯形上底长a,下底长b,高h;(2)计算S=[(a+b)h]/2;(3)输出S。开始输入a,b,hS=[(a+b)h]/2输出S结束四、当堂训练,针对点评变式训练2-1:设计一个求任意数的绝对值的算法,并画出程序框图.四、当堂训练,针对点评是算法分析:第一步:输入数x;第二步:判断x≥0是否成立?若是,则|x|=x;若否,则|x|=-x.程序框图:开始输入xx≥0?输出x否输出-x结束四、当堂训练,针对点评变式训练2-2:画程序框图,对于输入的x值,输出相应的y值.开始程序框图x<0?是y=0否0≤x<1?是y=1否y=x输出y结束输入x1.对任意正整数n,的值,并画

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论