《第一节算法与流程图.ppt》由会员分享,可在线阅读,更多相关《第一节算法与流程图.ppt(21页珍藏版)》请在三一文库上搜索。
1、第一节 算法与流程图,基础梳理,1. 一般而言,对一类问题的 的、 的求解方法称为算法.,2. 流程图是由一些 和 组成的,其中图框表示各种操作的 ,图框中的文字和符号表示操作的 ,流程线表示操作的 .,3. 顺序结构:依次进行多个处理的结构.其结构形式为:,机械,统一,图框,流程线,类型,类型,先后次序,4. 选择结构:先根据条件作出判断,再决定执行哪一种操作的结构.其结构形式为:,5. 循环结构:需要重复执行同一操作的结构.,6. 如图是一种常见的循环结构:先判断所给条件p是否成立,若p成立,则执行A,再判断条件p是否成立;若p仍成立,则又执行A,如此反复,直到某一次条件p不成立时为止.这
2、样的循环结构称为当型循环.,7. 直到型循环:先执行A,再判断所给条件p是否成立,若p不成立,则再执行A,如此反复,直到p成立,该循环过程结束.,典例分析,题型一 算法的设计 【例1】已知点P(x0,y0)和直线l:Ax+By+C=0(A0),求点P(x0,y0)到直线l的距离d,写出其算法并画出流程图.,分析 由公式 可知,欲求点到直线的距离,要先求Z1=Ax0+By0+C及Z2=A2+B2,代入 用顺序结构解决.,解 算法如下: S1 输入点的坐标x0,y0及直线方程的系数A、B、C; S2 Z1Ax0+By0+C; S3 Z2A2+B2; S4 d ; S5输出d.,学后反思 给出一个问
3、题,设计算法时应注意: (1)认真分析问题,联系解决此问题的一般数学方法; (2)综合考虑此问题中可能涉及的各种情况; (3)借助有关变量或参数对算法加以表述; (4)将解决问题的过程划分为若干个步骤; (5)用简练的语言将各个步骤表示出来.,流程图:,举一反三 1. 写出一个将a,b,c由大到小排列的算法.,解析: S1比较a与b的大小,设较大者为a,较小者为b; S2比较a与c的大小,设较大者为a,较小者为c; S3比较b与c的大小,设较大者为b,较小者为c; S4输出a,b,c.,题型二 算法的顺序结构 【例2】如图,设计算法求底面边长为4,侧棱长为5的正四棱锥的侧面积及体积,并画出相应
4、的流程图.,分析 先求体积,V= Sh,S= ,高 ,R= a,斜高 ,从而求得S侧=4 ah=2ah,解 算法如下: 流程图: S1 a4,l5; S2 R a; S3 h ,S ; S4 V Sh; S5 输出V; S6 h ; S7 S侧2ah; S8 输出S侧.,学后反思 利用公式求解问题,先写出公式,看公式中的条件是否满足,若不满足,先求出需要的量,看要求的量需根据哪些条件求解.需要的条件必须先输入,或将已知条件全部输入,求出未知的量,然后将公式中涉及的量全部代入求值即可.,举一反三 2. 如图所示的流程图(部分)最终输出的结果是.,解析: 该流程图的算法为: S1 x2; S2 -
5、1; S3 y -1; S4 输出y. 所以y1=3,y= -1=8.,答案: 8,题型三 算法的选择结构 -2,x0, 【例3】(2010青岛模拟)函数y= 0,x=0, 写出求该函数函数值 2,x0, 的算法及流程图.,分析 该函数是分段函数,当x取不同范围内的值时,函数表达式不同,因此当给出一个自变量x的值时,用条件结构解决须先判断x的范围,然后确定利用哪一段解析式求函数值.,解 算法如下: 相应的流程图如图: S1 输入x; S2 如果x0,则y-2; 如果x=0,则y0; 如果x0,则y2; S3 输出函数值y.,学后反思 求分段函数值的算法应用到选择结构,因此在流程图的画法中需要引
6、入判断框,要根据题目的要求确定引入判断框的个数,而判断框内的条件不同,对应的下一图框中的内容或操作就相应地进行变化.,举一反三,3. 下图输出的是-.,解析: 由判断框可知,当S2 004时输出n,又由S=n(n+1)2可知S为1+2+n的和,所以是求S恰好大于2 004时n的值.,答案: 63,题型四 算法的循环结构 【例4】(14分)设计一个计算13599的算法,画出流程图.,分析 由于乘数较多,采用逐个相乘的方法程序太长,是不可取的,因此我们应采用引入变量应用循环的办法,可用当型循环和直到型循环.,解 方法一:当型循环.算法为: S1 I1 ,sum1. S2 判断I99是否成立.若是,
7、转 S3; 否则,输出sum4 S3 sumsumI. S4 II+2,返回S27 流程图如图所示: 14,方法二:直到型循环.算法为: S1 I1,sum1. S2 sumsumI. S3 II+24 S4 判断I99是否成立.若是,执行S5;否则,转S2. S5 输出sum.7 流程图如图所示: 14,学后反思 循环结构可细分为两类: 一类是当型循环结构,如图(1)所示,它的功能是当给定的条件P1成立时,执行A框,A框执行完毕后,再判断条件P1是否成立,如果P1仍然成立,再执行A框,如此反复执行A框,直到某一次条件P1不成立为止,此时不再执行A框,从b点离开循环结构.,(1)当型循环(2)
8、直到型循环 另一类是直到型循环结构,如图(2)所示,它的功能是先执行A,然后判断给定的条件P2是否成立,如果P2不成立,则继续执行A框,直到某一次给定的条件P2成立为止,此时不再执行A框,从b点离开循环结构.,举一反三 4. 给出以下10个数:5,9,80,43,95,73,28,17,60,36,要求把大于40的数找出来并输出,试画出该问题的流程图.,解析: 流程图如图所示.,易错警示,【例】设计一个流程图,求S=12+32+52+992的值.,错解 (如图甲、乙),错解分析 图甲的错误在于II+1,步长为1,计算的是S=12+22+32+992.图乙的错误在于先执行II+2而后执行SS+I
9、2,计算的是S=32+52+72+992.,正解,考点演练,10. 运行如图的算法流程,求输出y的值为4时x的值.,解析: 由框图知,该程序框图对应函数为 f(x)= (x+17),-171.由f(x)=4, 可知x=2.,11.在国家法定工作日内,每周满工作量的时间为40小时,若每周工作时间不超过40小时,则每小时工资8元;如因需要加班,超过40小时的每小时工资为10元.某公务员在一周内工作时间为x小时,但他须交纳个人住房公积金和失业保险(这两项费用为每周总收入的10%).试分析算法步骤并画出其净得工资y元的算法的流程图.(注:满工作量外的工作时间为加班),解析: 算法如下: S1 输入工作时间x小时; S2 若x40,则y8x(1-10%);否则, y408(1-10%)+(x-40)10(1-10%); S3 输出y值.,流程图:,12. 阅读下面某一问题的算法的程序框图,写出此框图反映的算法功能.,解析: 输入x,则 x,x0, -x,x0, 所以其功能是计算任意实数x的绝对值|x|.,
链接地址:https://www.31doc.com/p-2568152.html