3算法的三种基本逻算法的三种基本逻辑结构和框图表示辑结构和框图表示((二二))在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.例如在上一节课中,我们作过一个求三角形的面积的流程,其实那个流程是有问题的
因为当输入了a,b,c三个数值后,我们不知道它们是否可以组成三角形
所以应该先作一个判断,如果是三角形,则继续去计算面积;如果不是三角形,则输出错误信息
开始cba,,输入是否同时成立,,,acbbcacba存在这样的三角形继续不存在这样的三角形是否结束二、条件分支结构(1)条件结构是指在算法中通过对条件的判断,根据条件是否成立而选择不同流向的算法结构
它的一般形式是:pABYN(2)此结构中包含一个判断框,根据给定的条件P是否成立而选择执行A框或B框
无论P条件是否成立,只能执行A框或B框之一
(3)一个判断结构可以有多个判断框
(4)在许多算法中,需要对问题的条件作出逻辑判断,判断后依据条件是否成立而进行不同的处理方式,这就需要用条件结构来实现算法
例1.解一元二次方程ax2+bx+c=0
S1计算△=b2-4ac;S2如果△30Y=0
3×30+0
5(P-30)Y=0
3PM=D×Y输出M结束由此可见,在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向,这种先根据条件作出判断,再决定执行哪一种操作的结构就是条件分支结构,条件分支结构又称为条件结构
在A或B两个框中可以有一个是空的,即不执行任何操作,如图也是条件结构的一种
求过两点P1(x1,y1),P2(x2,y2)的直线的斜率,设计该问题的算法并画出程序框图
解:由于当x1=x2时,过两点P1、P2的直线的斜率不存在,只有当x1≠x2时,才可根据斜率公式求出,故可设计如下的算法和程序框图
S1输入x1,y1,x2,y2;