1、1.2.2 条件语句条件语句()1、条件语句的普通格式:、条件语句的普通格式:IF 条件条件 THEN 语句语句1ELSE 语句语句2END IFIF 条件条件 THEN 语句体语句体END IF满足条件?满足条件?语句语句1否否是是语句语句2满足条件?满足条件?是是语句体语句体否否复习:复习:2 2、注意书写的规范性、注意书写的规范性例例7.编写程序,使得任意输入的编写程序,使得任意输入的3个整数按从大到小的次序输出。个整数按从大到小的次序输出。开始开始输入输入a,b,ct=a,a=b,b=t是是t=a,a=c,c=t是是否否否否t=b,b=c,c=t是是否否输出输出a,b,c结束结束框图:
2、框图:IF 条件条件 THEN 语句语句END IF算法:算法:第一步:输入第一步:输入3个整数个整数a,b,c;第二步:比较第二步:比较a,b的大小,把大的值赋给的大小,把大的值赋给a,小的值赋给小的值赋给b;第三步:比较第三步:比较a,c的大小,把大的值赋给的大小,把大的值赋给a,小的值赋给小的值赋给c;第四步:比较第四步:比较b,c的大小,把大的值赋给的大小,把大的值赋给b,小的值赋给小的值赋给c;第五步:按次序输出第五步:按次序输出a,b,c例例7.编写程序,使得任意输入的编写程序,使得任意输入的3个整数按从大到小的次序输出。个整数按从大到小的次序输出。开始开始输入输入a,b,ct=a
3、,a=b,b=t是是t=a,a=c,c=t是是否否否否t=b,b=c,c=t是是否否输出输出a,b,c结束结束框图:框图:程序:程序:INPUT“a,b,c=”;a,b,cIF ba THENt=aa=bb=tEND IFIF ca THENt=aa=cc=tEND IFIF cb THENt=bb=cc=tEND IFPRINT a,b,cENDIF 条件条件 THEN 语句体语句体END IF练习巩固练习巩固输入输入a a,b b,c c结束结束存在这样的存在这样的三角形三角形不存在这样不存在这样的三角形的三角形a+ba+bc c,a+c a+c b b,b+c b+c a a是否同时成立
4、?是否同时成立?否否开始开始是是1.该程序框图所示的算法作用是什么?并根据程序框图写出对应的程序。程序程序:INPUT “a,b,c=“;a,b,cIF a+bc AND b+ca AND a+cb THEN PRINT “Yes.”ELSE PRINT“No.”END IFEND2、分析下面的程序,阐明运行成果。、分析下面的程序,阐明运行成果。INPUT“请输入一个正的两位数请输入一个正的两位数”;xIF 9x AND x100 THEN a=x10 b=x MOD 10 x=10*b+a PRINT xELSE PRINT “输入有误!输入有误!”END IFENDINPUT Please
5、 input an integer:;a IF a MOD 2=0 THEN PRINT Even.ELSE PRINT Odd.END IFEND3、编写一种程序,判断任意整数的奇偶性。、编写一种程序,判断任意整数的奇偶性。程序程序:4、某快递公司规定甲、乙两地之间物品的托运费用根据下面的办、某快递公司规定甲、乙两地之间物品的托运费用根据下面的办法计算:物品重量在法计算:物品重量在50公斤以内,托运费为每公斤公斤以内,托运费为每公斤 0.53 元,超出的元,超出的 话,超出部分每公斤话,超出部分每公斤0.85元,试画出计算费用元,试画出计算费用M的程序框图,并写的程序框图,并写出出 对应的对
6、应的QBASIC程序。程序。程程序序框框图图:开始结束输入重量G输出运费MG=50?M=0.53*GM=50*0.53+0.85*(G-50)否是对应的对应的QBASICQBASIC程序程序INPUT“zhongliang G=”;GIF G=50 THEN M=0.53*GELSE M=50*0.53+0.85*(G-50)END IFPRINT“yunfeiwei:”;MENDP29练习练习4INPUT Please input a year;y b=y MOD 4 c=y MOD 100 d=y MOD 400 IF b=0 AND c0 THEN PRINT Leap year.ELS
7、E IF d=0 THEN PRINT Leap year.ELSE PRINT Not leap year.END IF END IFEND作业:作业:P33 B组组3题题的值的值,并画出程序框图并画出程序框图.设计一种算法求设计一种算法求练习练习:对任意正整数对任意正整数n,n,算法算法:第一步:取第一步:取S=0,i=1;第二步:计算第二步:计算S=S+i,i=i+1;第三步:判断第三步:判断i100与否成立与否成立,若否,则返回第二步,若否,则返回第二步,若是,则输出若是,则输出S的值;的值;例例.设计一种计算设计一种计算1+2+3+100的值的算法,并画出程序框图。的值的算法,并画出
8、程序框图。框图:框图:开始开始S=0输出输出S结束结束i=1i100?S=S+ii=i+1否否是是的值的值,并画出程序框图并画出程序框图.开始开始输入一种正整数输入一种正整数n输入输入S的值的值结束结束S=0i=1S=S+1/ii=i+1in?NY设计一种算法求设计一种算法求步骤步骤A步骤步骤B 思考思考:将环节将环节A A和环节和环节B B交换位置,交换位置,成果会如何?能达成预期成果吗?为成果会如何?能达成预期成果吗?为什么?要达成预期成果,还需要做如什么?要达成预期成果,还需要做如何的修改?何的修改?练习:练习:对任意正整数对任意正整数n,n,【变式引申】【变式引申】画程序框画程序框图,求,求的值.4.程序:程序:INPUT“a,b,c=”;a,b,c sum=10.4*a+15.6*b+25.2*c PRINT“sum=”;sum END3.程序:程序:INPUT“a,b,c=”;a,b,c p=(a+b+c)/2 S=SQR(p (p-a)(p-b)(p-c)PRINT“S=”;S END*课本练习课本练习P24 3、4答案答案注:第注:第3题图在课本第题图在课本第9页页