(课件网) 1.2.2 条件语句 输入:x If x>0 then Y=1 Else Y=0 End if 输出 y 1.2 基本算法语句 一、温故知新 输入语句、输出语句和赋值语句的一般格式分别是什么? 输入语句:INPUT “提示内容”;变量 输出语句:PRINT “提示内容”;表达式 赋值语句:变量=表达式 为体现“加快文明社会的发展,加强对老年人的关爱”,景区规定对年龄超过70岁(含70岁)的游客可以免费提供“旅游拐杖”一根,其它游客购买“旅游拐杖”则需 2元/根。请设计游客购买“旅游拐杖”费用的算法,画出程序框图。 分析:第一步 输入年龄x 第二步 判断x与70的大小,若x≥70,那么 y=0;否则y=2. 第三步 输出y 二、课题引入 开 始 x≥70? 是 否 输入 x 结束 y=0 y=2 输出 y INPUT x IF x >=70 THEN y=0 ELSE y=2 End IF PRINT y END 对于顺序结构的算法或程序框图,我们可以利用输入语句、输出语句和赋值语句写出其计算机程序.对于条件结构的算法或程序框图,要转化为计算机能够理解的算法语言,我们必须进一步学习条件语句. 条件结构有哪两种形式? 思考1:下图是算法的条件结构用程序框图表示的一种形式,它对应的条件语句的一般格式设定为: 满足条件? 步骤1 步骤2 是 否 IF 条件 THEN 语句体1 ELSE 语句体2 END IF 你能理解这个算法语句的含义吗? 三、知识探究:条件语句(1) 满足条件? 步骤1 步骤2 是 否 IF 条件 THEN 语句体1 ELSE 语句体2 END IF 当计算机执行上述语句时,首先对IF 后的条件进行判断,如果(IF)条件 符合,那么(THEN)执行语句体1, 否则(ELSE)执行语句体2. 条件语句(2) IF 条件 THEN 语句体 END IF 思考2:下图是算法的条件结构用程序框图表示的另一种形式,它对应的条件语句的一般格式设定为: 满足条件? 步骤A 是 否 你能理解这个算法语句的含义吗? IF 条件 THEN 语句体 END IF 满足条件? 步骤A 是 否 当计算机执行上述语句时,首先对IF后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体,否则执行END IF之后的语句. 例1:求实数x的绝对值有如下一个算法: 第一步,输入一个实数x. 第二步,判断x的符号.若x≥0,则输出x;否则,输出-x. 该算法的程序框图如何表示? 思考3:你能写出这个算法对应的程序吗? x≥0? 开始 结束 输入x 是 输出x 否 输出-x END INPUT “x=”;x IF x>=0 THEN PRINT x ELSE PRINT -x END IF 思考4: 阅读这个程序,它的功能是什么? x<0? 开始 结束 输入x 是 x=-x 输出x 否 END INPUT x IF x<0 THEN x=-x END IF PRINT x 例2 编写程序,使任意输入的3个整数按从大到小的顺序输出. 第四步,将b与c比较,并把小者赋给c,大者 赋给b. 第一步,输入3个整数a,b,c. 第二步,将a与b比较,并把小者赋给b,大者 赋给a. 第三步,将a与c比较,并把小者赋给c,大者 赋给a. 第五步,按顺序输出a,b,c. 算法分析: 开始 输入a,b,c b>a? t=a a=b b=t t=a a=c c=t t=b b=c c=t 是 是 是 输出a,b,c 否 c>b? 否 c>a? 否 结束 INPUT a,b,c IF b>a THEN t=a a=b b=t END IF IF c>a THEN t=a a=c c=t END IF IF c>b THEN t=b b=c c=t END IF PRINT a,b,c END 例3 将下列程序框图转化为程序? 开始 输入x X<0? x=0? y=x+1 输出y 结束 y =x 是 否 否 是 y =0 INPUT “x=”; x IF x<0 THEN y=x+1 ELSE IF x=0 THEN y=0 ELSE y=x END IF END IF PRINT “y=”; y END 一般在含有两个或两个以上的条件结构中,编写程序时,可利用条件语句的叠加形式: 条件语句(3)--复合条件语句 If 条件1 Then 语句1 End If If 条件2 Then 语句2 End If ...... If 条件n Then 语句n End If 1、叠加IF语句 条件1 条件2 语句3 语句2 语句1 假 真 真 假 ... ...