1、1.1.2 程序框图与算法的基本逻辑结构第 1 课时 程序框图、顺序结构1了解程序框图的含义,理解程序框图的作用(难点) 2掌握各种程序框和流程线的画法与功能3理解程序框图中的顺序结构,会用顺序结构表示算法(重点)基础初探教材整理 1 程序框图阅读教材 P6 的内容,完成下列问题1程序框图(1)程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形(2)在程序框图中,一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来,表示算法步骤的执行顺序2常见的程序框、流程线及各自表示的功能图形符号 名称 功能终端框(起止框) 表示一个算法的起始和结束输入、输出框
2、 表示一个算法输入和输出的信息处理框(执行框) 赋值、计算判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”流程线 连接程序框 连接点连接程序框图的两部分在程序框图中,表示判断框的图形是( )【解析】 四个选项中的程序框依次为处理框,输入、输出框,判断框和起止框【答案】 C教材整理 2 顺序结构阅读教材 P8 P9,完成下列问题1定义:顺序结构是由若干个依次执行的步骤组成的这是任何一个算法都离不开的基本结构2程序框图表示为:3顺序结构的特点语句与语句之间、框与框之间是按照从上到下的顺序进行的上图所示虚框内是一个顺序结构,其中“步骤 n”和“步骤 n1”两个
3、框是按顺序执行的,即只有在执行完“步骤 n”后,才能接着执行“步骤 n1” 1判断(正确的打“” ,错误的打“”)(1)程序框图是算法的一种表现形式( )(2)一个完整的程序框图一定是以起止框开始,同时又以起止框表示结束( )(3)一个程序框图中可以没有顺序结构( )【答案】 (1) (2) (3)2如图 111 所示的程序框图,输出的结果是 S7,则输入的 A 值为_图 111【解析】 该程序框图的功能是输入 A,计算 2A1 的值由 2A17,解得 A3.【答案】 3小组合作型程序框图的认识和理解下列关于程序框图的说法正确的是( )A程序框图是描述算法的语言B程序框图中可以没有输出框,但必
4、须要有输入框给变量赋值C在程序框图中,一个判断框可能同时产生两种结果D程序框图与流程图不是同一个概念【精彩点拨】 根据程序框图的定义和程序框的功能判断【尝试解答】 由于算法设计时要求返回执行的结果,故必须要有输出框,对于变量的赋值可通过处理框完成,故算法设计时不一定要有输入框,因此 B错;一个判断框产生的结果是唯一的,故 C 错;程序框图就是流程图,所以 D错故选 A.【答案】 A1理解程序框图中各框图的功能是解此类题的关键,用程序框图表示算法更直观、清晰、易懂2起止框用“ ”表示,是任何流程不可少的,表明程序的开始和结束3输入、输出框图用“ ”表示,可用在算法中任何需要输入、输出的位置,需要
5、输入的字母、符号、数据都填在框内4处理框用“ ”表示,算法中处理数据需要的算式、公式等可以分别写在不同的用以处理数据的处理框内,另外,对变量进行赋值时,也用到处理框5判断框是唯一具有超过一个退出点的图形符号再练一题1关于程序框图的框图符号的理解,正确的是( )任何一个程序框图都必须有起止框;输入框、输出框可以在算法中任何需要输入、输出的位置出现;判断框是唯一具有超过一个退出点的框图符号;对于一个程序来说,判断框内的条件是唯一的. A1 个 B2 个C3 个 D4 个【解析】 任何一个程序都有开始和结束,从而必须有起止框;输入、输出框可以在算法中任何需要输入、输出的位置出现,判断框内的条件不是唯
6、一的,如 ab?也可以写为 ab?.但其后步骤需相应调整,故正确,错误【答案】 C利用顺序结构表示算法已知直线 l:Ax By C 0( A2B 20),点 P(x0,y 0),设计一个算法计算点 P 到直线 l 的距离,并画出程序框图. 【精彩点拨】 可以利用点到直线的距离公式 d ,给公式|Ax0 By0 C|A2 B2中的字母赋值,再代入计算【尝试解答】 用自然语言描述算法如下:第一步,输入点 P 的横、纵坐标 x0,y 0,输入直线方程的系数,即常数 A,B,C.第二步,计算 z1Ax 0By 0C.第三步,计算 z2A 2B 2.第四步,计算 d .|z1|z2第五步,输出 d.程序
7、框图:1对于套用公式求解的问题往往运用顺序结构,编写顺序结构的算法,应写公式,看公式中的条件是否满足,若不满足,则先求出需要量,然后将公式中涉及的量全部代入求值即可2应用顺序结构表示算法的步骤(1)认真审题,理清题意,明确解决方法;(2)明确解题步骤;(3)数学语言描述算法,明确输入量、计算过程、输出量;(4)用程序框图表示算法过程3顺序结构在程序框图中的表现就是用流程线将程序框自上而下连接起来,按顺序执行中间没有“ 转弯 ”,也没有“回头”,顺序结构只能解决一些简单问题再练一题2把直线 l 改为圆 C:(xa) 2( yb) 2r 2,写出求点 P0(x0,y 0)到圆上的点的距离最大值的算
8、法及程序框图. 【解】 第一步,输入点 P0 的横、纵坐标 x0,y 0,输入圆心 C 的横、纵坐标 a,b,圆的半径 r.第二步,计算 z1 .x0 a2 y0 b2第三步,计算 dz 1r.第四步,输出 d.程序框图:程序框图的应用如图 112 所示是解决某个问题而绘制的程序框图,仔细分析各图框内的内容及图框之间的关系,回答下面的问题:(1)该框图解决的是怎样的一个问题?(2)若最终输出的结果 y13,y 22,当 x 取 5 时输出的结果 5ab 的值应该是多大?(3)在(2)的前提下,输入的 x 值越大,输出的 axb 是不是越大,为什么?(4)在(2)的前提下,当输入的 x 值为多大
9、时,输出结果 axb 等于 0?图 112【精彩点拨】 根据程序框图的意义进行分析【尝试解答】 (1)该框图解决的是求函数 f(x)axb 的函数值的问题其中输入的是自变量 x 的值,输出的是 x 对应的函数值(2)y13,即 2ab3.y22,即 3ab 2.由得 a1,b1.所以 f(x)x1.所以当 x 取 5 时,5ab f(5)516.(3)输入的 x 值越大,输出的函数值 axb 越大,因为 f(x)x1 是 R 上的增函数(4)令 f(x)x10,得 x1,因此当输入的 x 值为1 时,输出的函数值为 0.由程序框图识别算法功能应注意的问题根据算法功能求输出结果,或根据输出结果求
10、框图中某一步骤,应注意以下几点:(1)要明确各框图符号的含义及作用;(2)要明确框图的方向流程;(3)要正确认图,即根据框图说明该算法所要解决的问题其中,明确算法功能是解决此类问题的关键再练一题3写出下列算法的功能:(1)图 113(1)中算法的功能是(a0,b0)_(2)图 113(2)中算法的功能是_图 113【答案】 (1)求以 a,b 为直角边的直角三角形斜边 c 的长 (2)求两个实数 a,b 的和探究共研型程序框图的画法与特征探究 1 画程序应遵循的规则有哪些?【提示】 (1)使用标准的程序框图的图形符号(2)程序框图一般按照从上到下、从左到右的顺序画(3)一个完整的程序框图必须有
11、终端框,用于表示一个算法的开始和结束(4)除判断框外,大多程序框图的图形符号只有一个进入点和一个退出点,判断框是唯一具有超过一个退出点的框图符号(5)一种判断框是“是”与“否”两分支的判断,而且有且仅有两个结果;另外一种是多分支判断,可能有几种不同的结果(6)在程序框图的图形符号内,用于描述的语言要简练、清楚探究 2 画程序框图时,一般共分几步?【提示】 画程序框图一般分三步:(1)第一步:用自然语言表述算法步骤(又称算法分析);(2)第二步:确定每一个算法步骤所含的逻辑结构,并用相应的程序框图表示;(3)第三步:将所有步骤的程序框图用流程线连接起来,并加上终端框,得到整个表示算法的程序框图探
12、究 3 程序框图与计算机程序的关系是什么?【提示】 在设计计算机程序时要画出程序运行的程序框图,有了这个程序框图,再去设计程序就有了依据,从而就可以把整个程序用机器语言表述出来,因此程序框图是我们设计程序的基本和开端.1对程序框图叙述正确的是( )A表示一个算法的起始和结束,程序框是B表示一个算法输入和输出的信息,程序框是C表示一个算法的起始和结束,程序框是D表示一个算法输入和输出的信息,程序框是【解析】 由程序框的算法功能可知选项 C 正确【答案】 C2根据所给的程序框图,如图 114 所示,输出的结果是( )图 114A3 B1 C2 D0【解析】 由 XY,得 X2;由 YX ,得 Y2;由 Z Y,得 Z2.【答案】 C3若 R8,则如图 115 所示的程序框图运行后的结果为 a_. 图 115【解析】 由 R8 得 b 2,a2b4.R2【答案】 44如图 116 是求长方体的体积和表面积的一个程序框图,补充完整,横线处应填_图 116【解析】 根据题意,长方体的长、宽、高应从键盘输入,故横线处应填写输入框.【答案】 5写出解不等式 2x1 0 的一个算法,并画出程序框图【解】 第一步,将 1 移到不等式的右边;第二步,不等式的两端同乘 ;12第三步,得到 x .12程序框图如图所示: