算法的基本逻辑结构

文档属性

名称 算法的基本逻辑结构
格式 rar
文件大小 112.2KB
资源类型 教案
版本资源 人教新课标A版
科目 数学
更新时间 2007-11-18 00:34:00

文档简介

课件28张PPT。程 序 框 图 与
算法的基本逻辑结构
复习 1、算法是指 。
2、算法有哪些特征?
3、用自然语言表示算法。1、算法通常是指按照一定规则解决某一类问题的明确和有限的步骤。 2、 ①有限性 ②明确性 ③有序性(程序性) 六、例题2:写出用“二分法”求方程
的近似解第一步:第二步:第三步:第四步:第五步:判断[a,b]的长度是否小于d或f(m)是否等于0,若是,
则m是方程的近似解;否则,返回第三步。第五步,再将945乘以11,得到10395,即是最后结果。评析:求解某个问题的算法不同于求解一个具体问题的方法,
算法必须能够解决一类问题,并且能够重复使用;算法过程
要能一步一步地执行,每一步操作必须确切,能在有限步后
得出结果。练习、求1×3×5×7×9×11的值,写出其算法。第一步,先求1×3,得到结果3;第二步,将第一步所得结果3再乘以5,得到结果15;第三步,再将15乘以7,得到结果105;第四步,再将105乘以9,得到945;1、程序框图 (1)程序框图的概念 程序框图又称流程图,是一种用规定的程序框、流程线及文字说明来准确、直观地表示算法的图形。 一个程序框图包括以下几部分:
①表示相应操作的程序框;
②带箭头的流程线;
③程序框外必要的文字说明。 在程序框图中,一个或几个程序框图的组合表示算法中的一个步骤;带有箭头的流程线将程序框连接起来,表示算法步骤的执行顺序。终端框
(起止框)输入、
输出框处理框
(执行框)判断框表示一个算法的
起始和结束表示一个算法输
入和输出的信息赋值、计算判断某一条件是否成立,成立时在出口处标明“是”或“Y”,不成立时标明“否”或“N”.2.常见的程序框图(ANSI,美国国家标准化协会)流程线连接程序框连接点连接程序框图的两部分 辨析练习1. 流程图的判断框,有一个入口和n个出口,则n的值为( )
1 (B) 2 (C) 3 (D) 4
2. 下列图形符号表示输入输出框的是( )
矩形框 (B) 平行四边形框
(C) 圆角矩形框 (D) 菱形框
3.表示“根据给定条件判断”的图形符号框的( )
矩形框 (B) 平行四边形框
(C) 圆角矩形框 (D) 菱形框BBD 算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表达它. 例如上一节“判断整数n(n>2)是否为质数”的算法可以用以下形式来表达.开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=0?否是求n除以i
的余数rn是质数是否 尽管不同的算法千差万别,但它们都是由三种基本的逻辑结构构成的,这三种逻辑结构就是顺序结构、条件结构、循环结构.下面分别介绍这三种结构.2、算法的三种基本逻辑结构
顺序结构、条件结构、循环结构。 顺序结构 顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。i=2 输入n 示意图 顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。如在示意图中,步骤n和步骤n+1是依次执行的,只有在执行完步骤n指定的操作后,才能接着执行步骤n+1所指定的操作。例1、写出图1、图2中程序框图的运行结果: (1)图中输出S= ;5/2(2)图中输出a= 。2练习1:写出下列算法的功能。 (1)右图算法的功能
是 ; 求两数平方和
的 算术平方根(2)右图算法的功能
是 。求两数的和例3、已知一个三角形的三边边长分别为a,b,c,利用海伦—秦九韶公式设计一个算法,求出它的面积,并画出程序框图。
海伦—秦九韶公式:解:求面积的算法:
第一步:计算
第二步:计算
第三步:输出三角形的面积S图示:开始输出S结束例3、已知一个三角形的三边边长分别是2,3,4,利用海伦-秦九韶面积公式,求三角形的面积.练习2:利用梯形的面积公式计算上底为2,下底为4,高为5的梯形的面积。设计出该问题的算法及程序框图。例3、写出过两点P1(2,0),P2(0,3)的直线方程的一个算法,并画出程序框图。解:算法如下:
第一步:a=2,b=3;
第二步:计算 ;
第三步:输出结果。 相应的程序框图为: 练习3:
1、写出过两点P1(3,5),P2(-1,2)的直线的斜率的一个算法,并画出程序框图。
2、写出求A(x1,y1),B(x2,y2)的两点距离的一个算法,并画出程序框图。 三、本课小结1、程序框图
(1)程序框图由程序框、流程线和程序框外必要的文字说明组成。
(2)程序框有:终止框、输入(输出)框、处理框和判断框。2、算法的基本逻辑结构:顺序结构、条件结构和循环结构。
3、画程序框图的规则
(1)使用标准的框图符号;
(2)框图一般从上到下、从左到右的方向画;
(3)除判断框外,大多数框图符号只有一个进入点和一个退出点;
(4)在框图符号内描述的语言要简练清楚。四、练习
1、写出解方程ax+b=0(a≠0)的算法并画出算法的程序框图。
2、已知f(x)=x2-2x-3,求f(3)、f(-5)、
f(5),并计算f(3)+f(-5)+f(5)的值,设计出解决该问题的一个算法,并画出程序框图。课件15张PPT。算法的基本逻辑结构(2)复习:1.表示算法有哪两种不同表达方式?
2.你觉得用程序框图来表达算法有哪些特点?用程序框图表示的算法更加简练,直观,流向清楚. 程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形. 通常,程序框图由程序框和流程线组成.一个或几个程序框的组合表示算法中的一个步骤;流程线是方向箭头,按照算法进行的顺序将程序
框连接起来.基本的程序框和它们各自表示的功能如下:终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不”成立时标明“否”或“N”.判断框赋值、计算流程线连接程序框连接点连接程序框图的两部分顺序结构用程序框图来表示算法,有三种不同的基本逻辑结构:条件结构循环结构(1)顺序结构-----是由若干个依次执行的处理步骤组成的.这是任何一个算法都离不开的基本结构. i=2 输入n (2)条件结构---在一个算法中,经常会遇到一些条件的判断,算法的流向根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.步骤A满足条件?
步骤B
是否步骤A满足条件?是否例1:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图.算法分析:第一步:输入3个正实数a,b,c;第二步:判断a+b>c,a+c>b,b+c>a是否同时成立,若是,则能组成三角形;若否,则组不成三角形.程序框图:开始输入a,b,ca+b>c,a+c>b,b+c>a
是否同时成立?是存在这样的
三角形不存在这样的
三角形否结束例2:为了加强居民的节水意识,某市制订了以下生活用水收费标准:每户每月用水未超过7m3时,每立方米收费1.0元,并加收0.2元的城市污水处理费;超过7m3的部分,每立方米收费1.5元,并加收0.4元的城市污水处理费,请你写出某户居民每月应交纳的水费y(元)与用水量x(m3)之间的函数关系,然后设计一个求该函数值的算法,并画出程序框图.解:y与x之间的函数关系为:(当0≤x≤7时)
(当x>7时)解:y与x之间的函数关系为:(当0≤x≤7时)
(当x>7时)算法分析:第一步:输入每月用水量x;
第二步:判断x是否不超过7.
若是,则y=1.2x; 否则
y=1.9x-4.9.
第三步:输出应交纳水费y.开始输入x0第二步:判断x≥0是否
成立?若是,则|x|=x
否则|x|=-x.程序框图:开始输入xx≥0?输出x否输出-x结束算法分析:第一步:输入3个系数a,b,c第二步:判断a 是否为0.若为0,则执行第一步;
否则,执行第三步.第四步:计算Δ≥0是否成立.若是,则计算 ;
否则,输出“方程没有实数根”,结束算法。第五步:计算Δ=0是否成立.若是,则输出x1=x2=p;
否则, 计算x1=p+q,x2=p-q,并输出x1,x2。第三步:计算Δ=b2-4ac作业:课件14张PPT。练习巩固1 看下面的程序框图,分析算法的作用(1)(2)例1 设计一算法,求和:1+2+3+…+100第一步:确定首项a,末项b,项数n;第二步:利用公式“和=(首项+尾项)×项数/2”求和;第三步:输出求和结果。算法1:例1 设计一算法,求和:1+2+3+…+100算法2想法:先:从1开始将自然数1、2、 3、…、100逐个相加;再:输出累加结果。思考:1、上边的式子有怎样的规律呢?S=0
S=S + 1
S=S + 2
S=S + 3

S=S+ 1002、怎么用程序框图表示呢?4、如何使程序结束?3、i有什么作用?Sum呢?S=S+ i程序框图 如图开始i=1sum=0i=i+1sum=sum+ii≤100?输出sum结束否是能否说说这个流程图的异同点?解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。直到型结构当型结构i<100?i>=100?请填上判断的条件。 例2、 对任意正整数n,的值,并画出程序框图.开始输入一个正整数n输入S的值结束S=0i=1S=S+1/ii=i+1i≤nYN设计一个算法求 思考:将步骤A和步骤B交换位置,结果会怎样?能达到预期结果吗?为什么?要达到预期结果,还需要做怎样的修改?当型循环结构练、设计一算法,求积:1×2×3×…×100,画出流程图直到型循环结构直到型循环结构顺序结构输入nflag=1条件结构flag=1?n是质数n不是质数结束是否循环结构flag=0d=d+1d整除n?d<=n-1且flag=1?否是否是例3 用二分法求解方程求关于x的方程x2-2=0的根,精确到0.005算法描述第一步 令f(x)=x2-2,因为f(1)<0,f(2)>0,所以设x1=1,x2=2第二步 令m=(x1+x2)/2,判断f(m)是否为0,若是,则m为所求,否则,则继续判断f(x1)·f(m)大于0还是小于0。第三步 若f(x1)·f(m) >0则令x1=m,否则x2=m。第四步 判断|x1-x2|<0.005是否成立?若是则x1、x2之间的任意值均为满足条件的近似值;否则返回第二步。流程图表示