问题提出1.输入语句、输出语句和赋值语句的一般格式分别是什么?输入语句:input“提示内容”;变量输出语句:print“提示内容”;表达式赋值语句:变量=表达式2.对于顺序结构的算法或程序框图,我们可以利用输入语句、输出语句和赋值语句写出其计算机程序.对于条件结构的算法或程序框图,要转化为计算机能够理解的算法语言,我们必须进一步学习条件语句.1.处理条件分支逻辑结构的算法语句,叫做条件语句.Scilab语言中的条件语句分为if语句和selectcase━语句.2.if语句的一般格式是:if表达式语句序列1;else语句序列2;end学习新知:计算机执行这种格式的条件语句时,如果表达式结果为真,则执行表达式后面的语句序列1;当表达式结果为假时,执行else后面的语句序列2,然后结束这一条件语句.例1:阅读框图并判断55求任意数的绝对值的算法结束YN开始输入xx≥0?输出yy=xy=-xx=input(“x=”);ifx>=0y=x;elsey=-x;endprint(%io(2),y)IF条件语句1ELSE语句2ENDIF求任意数的绝对值INPUT“X=”;XIFX>=0PRINTXELSEPRINT-XENDIFEND例2.解一元二次方程ax2+bx+c=0.S1计算△=b2-4ac;S2如果△<0,则原方程无实数解;否则(≥0),△x1=,x2=;242bbaca242bbacaS3输出x1,x2,或“无实数解”信息.△=b2-4ac输出x1,x2≥△0?YN12,22bbxxaa输出“方程无实数解”输入a,b,c开始结束a=input(“a=”);b=input(“b=”);//输入a,b,c的值c=input(“c=”);d=b*b-4*a*c;//计算判别式的值ifd<0//如果d<0disp(“nosolution”);//输出无解信息elset=sqrt(d);//否则计算d的平方根x1=(-b+t)/(2*a);//计算x1的值x2=(-b-t)/(2*a);//计算x2的值print(%io(2),x2,x1)//输出x1,x2的值end//结束条件语句3.if-end格式的条件语句的一般格式为:if表达式语句序列1;end计算机要执行这种格式的条件语句时,先对表达式的结果进行判断,若表达式结果为真,则执行表达式后面的语句序列1,否则直接跳过语句序列1,执行其他语句。例3.比较a与b的大小,并按大小顺序输出.S1输入2个数a、b;S2将a与b比较,并把小者赋给b,大者赋给a;S3按顺序输出a、b.a=input(“a=”);b=input(“b=”);Ifa0y=x+1输出y结束x<0y=0y=-x+1否是x=input(“x=”);ifx<0y=-x+1;elseifx=0y=0;elsey=x+1;endend否是开始输入xx>0y=x+1输出y结束x<0y=0y=-x+1否是练习题1.下面的问题中不需用条件结构就可以实现的是()A.已知三角形三边长,求三角形的面积;B.求方程ax+b=0(a,b为常数)的根;C.求三个实数a,b,c中的最大者;D.给出两点M、N的坐标,计算直线MN的斜率。A2.给出以下四个问题,①输入一个数x,输出它的相反数.②求面积为6的正方形的周长.③求三个数a,b,c中的最大数.④求函数的函数值.其中不需要用条件语句来描述其算法的有()A.1个B.2个C.3个D.4个0201)(xxxxxfB能力提升:编写程序,使得任意输入3个整数按大到小的顺序输出.算法第四步,将b与c比较,并把小者赋给c,大者赋给b第一步,输入3个整数,,abc第二步,将与b比较,并把小者赋给b,大者赋给aa第三步,将与c比较,并把小者赋给c,大者赋给aa第五步,按顺序输出,,abcINPUT“a,b,c=”;a,b,c程序开始t=a,a=b,b=tt=a,a=c,c=tt=b,b=c,c=t输入a,b,c输出a,b,cb>a?c>a?c>b?否否否结束程序框图是是是IFb>at=aa=bb=tENDIFIFc>at=aa=cc=tENDIFIFc>bt=bb=cc=tENDIFPRINTa,b,cEND小结作业2.编写含有多个条件结构的程序时,每个条件语句执行结束时都以end表示.1.条件语句有两种形式,应用时要根据实际问题适当选取.