第一章算法初步1.1.2程序框图与算法的基本逻辑结构第2课时条件结构学习目标核心素养1.了解条件结构的概念,明确其执行过程.(重点)2.掌握条件结构程序框图的画法.(难点)3.理解条件结构在程序框图中的作用.(重点)1.通过条件结构的学习,培养逻辑推理素养.2.借助条件结构框图的设计,养成数学抽象素养.自主预习探新知1.条件结构算法的流程根据是否成立有不同的流向,处理上述过程的结构就是条件结构.条件2.条件结构的程序框图的两种形式及特征名称形式一形式二结构形式特征两个步骤A,B根据条件选择执行根据条件是否成立选择是否执行步骤A一个思考:条件结构的判断框有两个出口,是否条件结构执行的结果有两个?[提示]不是.虽然有两个出口,但根据条件是否成立,选择的出口是唯一的.1.已知如图是算法程序框图的一部分,其中含条件结构的个数是()A.0B.1C.2D.3C[①不含条件结构,②③含条件结构.]2.条件结构不同于顺序结构的特征是含有()A.处理框B.判断框C.输入、输出框D.起止框[答案]B3.下列问题的算法宜用条件结构表示的是()A.求点P(-1,3)到直线3x-2y+1=0的距离B.由直角三角形的两条直角边求斜边C.解不等式ax+b0(a≠0)D.计算100个数的平均数C[A、B、D只需顺序结构即可,C中要对a进行讨论,宜用条件结构.]4.如图所示程序框图描述的算法的运行结果为________.-5[∵x=-10,∴y=3×(-1)-2=-5.]合作探究释疑难对条件结构的理解【例1】(1)下列关于条件结构的描述,不正确的是()A.条件结构的出口有两个,但在执行时,只有一个出口是有效的B.条件结构的判断条件要写在判断框内C.双选择条件结构有两个出口,单选择条件结构只有一个出口D.条件结构根据条件是否成立,选择不同的分支执行(2)给出以下四个问题:①输入一个数x,输出它的绝对值;②求面积为6的正方形的周长;③求a,b,c三个数中的最大值;④求函数f(x)=3x-1,x≤0,x2+1,x0的函数值.其中需要用条件结构来描述算法的有()A.1个B.2个C.3个D.4个(1)C(2)C[(1)条件结构含有判断框,条件写在判断框内,有一个入口,两个出口,根据条件成立与否,选择不同的出口,故A、B、D正确,C错误.(2)①③④都要对条件作出判断,用条件结构,②用顺序结构即可.]条件结构理解的关键点在条件结构中,判断框有一个进入点,两个退出点,与顺序结构不同的是:它不依次执行指令,而是依据条件作出逻辑判断,选择执行两个指令中的一个.这里的“判断”主要判断“是”或“否”,即判断条件是否成立.[跟进训练]1.如图是算法流程图的一部分,其算法的逻辑结构是()A.顺序结构B.条件结构C.判断结构D.以上都不对B[是条件结构形式.]条件结构的设计[探究问题]1.我们经常需要处理分类讨论的问题,顺序结构能否完成这一任务?条件结构可以吗?[提示]分类讨论是带有分支的逻辑结构,顺序结构是按顺序依次执行的,不能完成这一任务,要用条件结构.2.条件结构中的“条件”有哪些特征?[提示](1)条件结构是依据指定条件选择执行不同指令的控制结构.(2)条件结构主要用在需要根据条件进行判断的算法中,如分段函数的求值、比较数据的大小关系等.3.在条件结构中,“条件”可以改变吗?[提示]求分段函数的函数值的程序框图画法不唯一,判断框内的内容可以改变,但相应处理框的内容也要发生改变.【例2】已知函数y=1x,x0,1x2,x0.设计一个算法的程序框图,计算输入x的值,输出y的值.思路点拨:根据分段函数求值,应先判断输入的数是正数还是负数,故需选择条件结构.[解]根据题意,其算法步骤如下:第一步,输入x.第二步,判断x0是否成立,若是,则输出y=1x,结束算法;若不是,则判断x0是否成立,若是,则输出y=1x2,结束算法;若不是,也结束算法.程序框图如图所示:1.(变条件)已知函数y=xx≥0exx0,画出输入一个数x,求函数值的程序框图.[解]程序框图如图所示.2.(设问)仿照例2的解决方法,你能画出解关于x的方程ax+b=0的算法的程序框图吗?[解]程序框图如图所示:设计条件结构框图的思路1先设计算法,再把算法步骤转化为框图的形式.2凡是先根据条件作出判断,再决定进行哪一个步骤的问题,在画算法框图时,都必须引入判断框,采用条件结构.3在画出条件结构的框图后,可通过检查各条件分支与已知描述情况是否对应来判断所画框图是否正确.条件结构的读图问题【例3】对任意非零实数a,b,若a⊗b的运算原理如程序框图所示,则3⊗2=________.2[由于a=3,b=2,则a≤b不成立,则输出a+1b=3+12=2.]条件结构读图1要理清所要实现的算法的结构特点与流程规则,分析其功能.2结合框图判断所要填入的内容或计算所要输出或输入的值.[跟进训练]2.一个算法的程序框图如图所示,则该程序框图的功能是()A.求a,b,c三数中的最大数B.求a,b,c三数中的最小数C.将a,b,c按从小到大排列D.将a,b,c按从大到小排列B[经判断框中a>b处理后,a变为a,b中的较小者,经判断框a>c处理后,a变为a,c中的较小者,结果输出a,即输出a,b,c中的最小数.]课堂小结提素养1.条件结构是程序框图的重要组成部分.其特点是先判断后执行.2.在利用条件结构画程序框图时要注意两点:一是需要判断条件是什么,二是条件判断后分别对应着什么样的结果.3.设计程序框图时,首先设计算法步骤,再转化为程序框图,待熟练后可以省略算法步骤直接画出程序框图.对于算法中分类讨论的步骤,通常设计成条件结构来解决.1.判断下列结论的正误(正确的打“√”,错误的打“×”)(1)条件结构的程序框图有一个入口和两个出口.()(2)条件结构的判断框有两个出口,所以执行条件结构后的结果不唯一.()(3)任何算法都离不开条件结构.()[答案](1)√(2)×(3)×2.如图所示的程序框图,其功能是()A.求a,b的最小值B.求a,b的最大值C.输入a,b,按从大到小顺序输出D.输入a,b,按从小到大顺序输出B[从程序框图知,输出a,b中的最大值.]3.如图的程序框图执行后,输出的y的值为()A.2B.1C.0D.3C[∵x=3,故执行“否”路径,即y=0.]4.如果学生的数学成绩大于或等于120分,则输出“良好”,否则输出“一般”.用程序框图表示这一算法过程.[解]Thankyouforwatching!