1.2.2条件语句
设计问题,创设情境
一位老农平整了一块良田,种瓜好呢,还是种豆好呢,
他面临着一个选择.如果他选择种瓜,他会得瓜,如果
他选择种豆,他会得豆.人的一生面临许多选择,我们
要做出正确的选择.前面我们学习了条件结构,今天我
们学习条件语句.
下图是算法的条件结构用程序框图表示的另一种形式,
它对应的条件语句的一般格式设定为:
满足条件?
语句体
是
否
信息交流,揭示规律
问题1、程序框图中有哪两种条件结构?用框图表示
出来.
IF 条件 THEN
语句体
END IF
满足条件?
语句体
是
否
当计算机执行上述语句时,首先对IF后
的条件进行判断,如果(IF)条件符合,那
么就执行THEN后的语句体,否则执行END IF
之后的语句.
下图是算法的条件结构用程序框图表示的一种形式,
它对应的条件语句的一般格式设定为:
满足条件?
语句体1 语句体2
是
否IF 条件 THEN
语句体1
ELSE
语句体2
END IF
满足条件?
语句体1 语句体2
是
否IF 条件 THEN
语句体1
ELSE
语句体2
END IF
当计算机执行上述语句时,首先对IF
后的条件进行判断,如果(IF)条件
符合,那么(THEN)执行语句体1,
否则(ELSE)执行语句体2.
问题2、条件语句的格式及功能是怎样的?.
答案:1°“IF—THEN—ELSE”语句
格式:
IF 条件 THEN
语句体1
ELSE
语句体2
END IF
功能:在“IF—THEN—ELSE”语句中,“条件”表示判
断的条件,“语句体1”表示满足条件时执行的操作内容;
“语句体2”表示不满足条件时执行的操作内容;END IF
表示条件语句的结束.计算机在执行“IF—THEN—ELSE”
语句时,首先对IF后的条件进行判断,如果符合条件,
则执行THEN后面的“语句1”;若不符合条件,则执行
ELSE后面的“语句2”.
2°“IF—THEN”语句
格式:
IF 条件 THEN
语句体
END IF
功能:“条件”表示判断的条件;“语句”表示满
足条件时执行的操作内容,条件不满足时,直接结
束判断过程;END IF表示条件语句的结束.计算机
在执行“IF—THEN”语句时,首先对IF后的条件进
行判断,如果符合条件就执行THEN后边的语句,
若不符合条件则直接结束该条件语句,转而执行其
他后面的语句.
问题3、两种条件语句的相同点与不同点分别是
什么?
相同点:第一种语句只有一个语句体,是满足
条件时执行的语句体:而第二种语句含有两个
语句体,满足条件时执行语句体1,不满足条
件时执行语句体2.
不同点:两种语句首先都要对条件进行判断,
然后才执行相应的语句体;执行语句体以后,
程序都交汇于一点完成条件语句;都以IF开
始,以END结束。
问题4、程序中的条件语句与程序框图中的条件结
构的对应关系是怎样的?
程序中的条件语句与程序框图中的条件结构存在
一一对应关系如下图
例1 编写程序,输出两个不相等的实数a、
b的最大值.
解:算法一:
第一步,输入a, b的数值.
第二步,判断a,b的大小关系,若a>b,则输
出a的值,否则,输出b的值.
该算法的程序框图如何表示?
运用规律,解决问题
你能写出这个算法对应的程序吗?
INPUT “a,b”;a,b
IF a>b THEN
PRINT a
ELSE
PRINT b
END IF
END
例2 高等数学中经常用到符号函数,符号函数的定义
为y= 试编写程序输入x的值,输出y的值.
,0,1
,0,0
,0,1
x
x
x
解析:程序如下:
INPUT x
IF x>0 THEN
y=1
ELSE
IF x=0 THEN
y=0
ELSE
y=-1
END IF
END IF
PRINT y
END
1、中国网通规定:拨打市内电话时,如果
不超过3分钟,则收取话费0.22元;如果通话
时间超过3分钟,则超出部分按每分钟0.1元收
取通话费,不足一分钟按以一分钟计算.设通
话时间为t(分钟),通话费用y(元),如何
设计一个程序,计算通话的费用.
变练演编,深化提高
解:算法程序如下:
INPUT “请输入通话时间:”;t
IF t=0 and x