条件语句6.docx
- 文档编号:29506448
- 上传时间:2023-07-24
- 格式:DOCX
- 页数:25
- 大小:73.54KB
条件语句6.docx
《条件语句6.docx》由会员分享,可在线阅读,更多相关《条件语句6.docx(25页珍藏版)》请在冰豆网上搜索。
条件语句6
1.2.2 条件语句
学习目标 1.理解条件语句的格式及功能.2.能用条件语句编写简单的程序.
知识点一 条件语句
条件语句的格式、功能及与条件结构的对应关系
格式一
格式二
条件语句
IF 条件 THEN
语句体
END IF
IF 条件 THEN
语句体1
ELSE
语句体2
ENDIF
语句功能
首先对IF后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体,否则执行ENDIF之后的语句
首先对IF后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体1,否则(ELSE)执行语句体2
对应条件结构框图
知识点二 条件语句的嵌套和叠加
1.条件语句的嵌套
①语句格式
IF 条件1 THEN
语句体1
ELSE
IF 条件2 THEN
语句体2
ELSE
语句体3
ENDIF
ENDIF
②程序框图
③条件语句嵌套的实质
将外层条件语句中的分支语句再设计成一个条件语句.
特别提醒:
在条件语句中的嵌套中,每一个“IF”对应着一个“ENDIF”,注意书写格式.
2.条件语句的叠加
①语句格式
IF 条件1 THEN
语句体1
ENDIF
IF 条件2 THEN
语句体2
ENDIF
IF 条件3 THEN
语句体3
ENDIF
②程序框图
1.条件语句中必须有ELSE和ENDIF.( × )
2.条件语句中可以没有ENDIF.( × )
3.条件语句中可以没有ELSE,但是必须有ENDIF.( √ )
4.条件语句中可以没有ENDIF,但是必须有ELSE.( × )
5.条件语句是用来表达算法中的条件结构的.( √ )
题型一 对条件语句的理解
例1
(1)条件语句的一般形式为“IFATHENBELSEC”,其中语句C的作用是( )
A.条件语句
B.不满足条件时执行的内容
C.条件
D.满足条件时执行的内容
(2)下列对条件语句的描述正确的是( )
A.ELSE后面的语句不可以是条件语句
B.两个条件语句可以共用一个ENDIF语句
C.条件语句可以没有ELSE后的语句
D.条件语句中IF—THEN和ELSE后的语句必须都有
(3)下面的问题中必须用条件语句才能实现的个数是( )
①已知三角形三边的长,求三角形的面积;
②求方程mx+n=0(m,n为常数)的根;
③求三个实数a,b,c中的最大数;
④求函数f(x)=ax2+bx+c(a≠0)的图象的对称轴方程.
A.4B.3C.2D.1
★答案★
(1)B
(2)C (3)C
解析
(1)“IFATHENBELSEC”,先判断IF后的条件,若“真”,则执行B;若“假”,则执行C.
(2)条件语句有两种格式,分别是IF—THEN格式和IF—THEN—ELSE格式.只有一个分支的条件语句可以没有ELSE后的语句.
(3)①已知三角形三边的长,求三角形的面积,直接代入公式,需要用顺序结构;②求方程mx+n=0(m,n为常数)的根,需要分类讨论m的取值,根据取值的不同,执行不同的算法;③求三个实数a,b,c中的最大数,需要用到条件语句;④求f(x)=ax2+bx+c(a≠0)的图象的对称轴方程,不需要用条件语句.
反思感悟
(1)在解题中,需要进行分类讨论的就必须用到条件语句.
(2)根据条件结构写条件语句:
①首先选择语句格式.当判断语句的两个出口语句都要执行时,采用“IF—THEN—ELSE”语句,当判断语句的两个出口语句只有一个要执行时,采用“IF—THEN”语句.
②然后确定条件和语句体.条件即为判断框内的条件,放在IF后.判断框中“是”后的执行框中的内容,是THEN后的语句体1,“否”后的执行框中(如果有的话)的内容,是ELSE后的语句体2.
跟踪训练1
(1)条件语句的一般形式为:
IFATHENBELSEC,其中B表示的是( )
A.满足条件时执行的内容
B.条件语句
C.条件
D.不满足条件时,执行的内容
(2)给出以下四个问题,①输入一个数x,输出它的绝对值;②求表面积为6的正方体的体积;③求三个数a,b,c中的最小值;④求函数f(x)=
的函数值.其中需要用条件语句来描述其算法的有________.(填序号)
★答案★
(1)A
(2)①③④
解析
(1)IFATHENBELSEC表示如果条件A成立,则执行B步骤,否则执行C步骤.
(2)②直接用顺序结构即可,不需用条件语句;而①需要判断这个数的正负;③需要判断这三个数的大小;④是分段函数求值问题,故①③④需用到条件语句.
题型二 条件语句的应用
例2
(1)阅读下面的程序,若分别输入0,1,4,8,9,10,则输出的结果是( )
INPUT “x=”;x
IF x MOD4=0 THEN
PRINT x
ENDIF
END
A.0,8B.4,8
C.0,4,8D.0,1,4,8,9,10
(2)若输入8,则下列程序执行后输出的结果是________.
INPUT “t=”;t
IF t<=3 THEN
c=0.2
ELSE
c=0.2+0.1*t-0.1*3
ENDIF
PRINT c
END
★答案★
(1)C
(2)0.7
解析
(1)算法的功能是输入一个数,判断其是否能被4整除,若能,则输出该数.在输入的数中,能被4整除的有0,4,8.
(2)本题中的程序实际上解决的是求分段函数c=
在t=8时的函数值的问题.
因为t=8>3,所以c=0.2+0.1×(8-3)=0.7.
反思感悟 解决根据条件语句写出运行结果的思路
根据程序写运行结果,首先观察所给语句是IF—THEN—ENDIF型条件语句还是IF—THEN—ELSE—ENDIF型条件语句,再看输入的值是否符合条件,进而执行相应的步骤,也可转化为数学式子,再代入求值.
跟踪训练2
(1)下列程序运行后的结果是( )
a=2
b=3
IF a<b THEN
t=a
a=b
b=t
END IF
PRINT“a=”;a,“b=”;b
END
A.a=2,b=3B.a=3,b=2
C.a=2,b=2D.a=3,b=3
(2)下列算法语句,若输入x为60,则输出y的值为( )
INPUT x
IF x<=50 THEN
y=0.5*x
ELSE
y=25+0.6*(x-50)
END IF
PRINT y
END
A.25B.30C.31D.61
★答案★
(1)B
(2)C
解析
(1)计算机执行本条件语句时,先对条件进行判断.因为2<3成立,所以把2赋给t,把3赋给a,再把2赋给b,并且最终输出的结果是a=3,b=2.故选B.
(2)因为60>50,所以y=25+0.6×(60-50)=31.
题型三 条件语句的编写
例3 已知y=
编写一个程序,
输入x的值,得到相应的函数值,并画出程序框图.
解 程序:
INPUT “x=”;x
IFx<0 THEN
y=2*x^2-5
ELSE
y=x-1
ENDIF
PRINT y
END
程序框图如图.
反思感悟
(1)“条件”表示判断的条件,“语句体1”表示满足条件时执行的操作内容,“语句体2”表示不满足条件时执行的操作内容,“ENDIF”表示条件语句的结束.
(2)计算机在执行时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后面的语句体1;如果条件不符合,就执行ELSE后面的语句体2,然后结束这一条件语句.“条件”处可以是复合条件.在“语句体”处可以有多个语句,执行时按从上到下的顺序执行.
跟踪训练3 编写程序,输出两个不相等的实数a,b中的较大数,并画出程序框图.
解 程序如下:
INPUT “a,b=”;a,b
IF b>a THEN
a=b
END IF
PRINT a
END
程序框图如图所示.
条件语句的实际应用
典例 某地电信部门规定:
拨打市内电话时,如果通话时间不超过3分钟,则收取通话费0.22元;如果通话时间超过3分钟,则超过部分按每分钟0.1元收费,不足1分钟按1分钟计算.设通话时间为t(单位:
分钟),通话费用为y(单位:
元),设计一个计算通话费用的程序.
解 定义y=[x]为正实数x的整数部分,
则通话费用y与通话时间t的关系式为
y=
程序:
INPUT “请输入通话时间(分钟):
”;t
IF 0 y=0.22 ELSE IF INT(t)=t THEN y=0.22+0.1*(t-3) ELSE y=0.22+0.1*(INT(t-3)+1) END IF END IF PRINT “通话费用(元): ”;y END [素养评析] (1)解决实际应用问题,应先建立函数模型,由于对应函数为分段函数,可考虑用条件语句对算法进行描述.应用多个条件语句的嵌套时,要明确各种条件与相应语句之间的对应关系,一般先由程序框图直观地弄清这些关系之后再编写程序. (2)根据题意,建立函数模型,设计运算程序,可以促进学生数学建模和数学运算的核心素养的提高. 1.阅读下面程序: INPUT x IF x<0 THEN x=-x ENDIF PRINT x END 若输入x=5,则输出结果x为( ) A.-5B.5C.0D.不确定 ★答案★ B 解析 当x≥0时,不符合条件,执行ENDIF之后的语句,直接输出x的值,即为5. 2.当a=3时,下面的程序输出的结果是( ) INPUT a IF a<10THEN y=2*a ELSE y=a*a ENDIF PRINT y END A.9B.3C.10D.6 ★答案★ D 解析 该程序表示的是求分段函数y= 的值,所以当a=3时,y=2×3=6. 3.若运行下面的程序后输出3,则输入的x值一定是( ) INPUT x IF x>0 THEN y=x ELSE y=-x ENDIF PRINT y END A.3B.-3C.3或-3D.0 ★答案★ C 解析 该程序的功能是求函数y=|x|的值, ∵y=3,∴x=±3. 4.下面程序的算法功能是: 判断任意输入的数x是不是正数,若是,则输出它的平方值;若不是,则输出它的相反数. INPUT “x=”;x IF THEN y=-x ELSE y=x*x ENDIF PRINT “y=”;y END 则横线处填入的条件应该是( ) A.x>0B.x<0C.x>=0D.x<=0 ★答案★ D 解析 条件成立时,执行y=-x;条件不成立时,执行y=x*x.由程序的算法功能,知条件应为x<=0, 故选D. 5.某程序如下: INPUT x IF x>=1 THEN y=x+1 ELSE y=3-2*x ENDIF PRINT y END 当执行此程序时,没有执行语句y=x+1,则输入的x值的取值范围为________. ★答案★ (-∞,1) 解析 由题意知,不执行语句y=x+1,说明输入x的值不满足条件x≥1,故x<1. 1.使用条件语句时应注意的问题 (1)条件语句是一个语句,IF,THEN,ELSE,ENDIF都是语句的一部分. (2)条件语句必须是以IF开始,以ENDIF结束,一个IF必须与一个ENDIF相对应. (3)如果程序中只需对条件为真的情况作出处理,不用处理条件为假的情况时,ELSE分支可以省略,此时条件语句就由双支变为单支. (4)为了程序的可读性,一般IF,ELSE与ENDIF顶格书写,其他的语句体前面则空两格. 2.对于三段或三段以上的分段函数求函数值时,需要条件语句的嵌套结构.在编写条件语句的嵌套中的“条件”时,要注意“IF”与“ENDIF”的配对,通常可以利用文字的缩进来表示嵌套的层次,以帮助我们对程序的阅读和理解. 3.条件语句的嵌套,其一般形式是 一、选择题 1.阅读下面程序,若输入x=-2,则输出的y为( ) INPUT “x=”;x IFx<0 THEN y=π*x/2+3 ELSE IF x>0 THEN y=-π*x/2-5 ELSE y=0 ENDIF ENDIF PRINT y END A.3+πB.3-π C.π-5D.-π-5 ★答案★ B 解析 输入x=-2,满足“x<0”的条件,执行“y=π*x/2+3”,则y=3-π. 2.若运行如下程序,最后输出y的值为-20,那么输入的t值为( ) INPUT “t=”;t IF t<5 THEN y=2*t-8 ELSE y=8*t-t^2 ENDIF PRINT y END A.10或-6B.10或-2 C.-6D.10或-2或-6 ★答案★ A 解析 当t<5时,由2t-8=-20,得t=-6;当t≥5时,由8t-t2=-20,得t=10. 3.下面程序运行的结果是3,则输入的x值是( ) INPUT x IF x>=0 THEN y=x^2+2 ELSE y=-x ENDIF PRINT y END A.1B.-3 C.1或-3D.±1或-3 ★答案★ C 解析 当x≥0时,3=x2+2,所以x=1; 当x<0时,3=-x,所以x=-3, 故选C. 4.阅读下列程序,这个程序的功能是( ) INPUT “a,b,c=”;a,b,c IF a>b THEN a=b END IF IF a>c THEN a=c END IF PRINT a END A.求出a,b,c三个数中的最大值 B.求出a,b,c三个数中的最小值 C.将a,b,c三个数从小到大排列 D.将a,b,c三个数从大到小排列 ★答案★ B 5.下列程序语句是求函数y=|x-4|+1的函数值,则①处为( ) INPUT “x=”;x IF x>=4 THEN y=x-3; ELSE __① ; ENDIF PRINT y END A.y=3-xB.y=x-5 C.y=5-xD.y=x-3 ★答案★ C 解析 y=|x-4|+1= 故选C. 6.执行如图所示的程序,如果输出的结果是4,那么输入的可能是( ) INPUT x IF x>=0 THEN y=x^2 ELSE y=x END IF PRINT y END A.2B.-4 C.2或-4D.±2或-4 ★答案★ A 解析 根据题意得,当x≥0时,y=x2=4,解得x=2;当x<0时,y=x<0,输出的值不可能为4,则输入的只可能是2,故选A. 7.运行下列程序,当输入x=-2时,输出结果是( ) INPUT “x=”;x IF x>0 THEN y=3*SQR(x) ELSE IF x=0 THEN y=1 ELSE y=-2*x^2+4*x ENDIF ENDIF PRINT y END A.16B.-16 C.2 D.8 ★答案★ B 解析 该程序的功能是求分段函数y= 的函数值, ∵x=-2,∴y=-16. 8.阅读下面的程序程序,运行的结果是( ) a=3 IF a<=3 THEN PRINT 3 END IF IF a<=4 THEN PRINT 4 END IF IF a<=5 THEN PRINT 5 END IF IF a<=6 THEN PRINT 6 END IF END A.3B.3,4C.3,4,5D.3,4,5,6 ★答案★ D 解析 在本题中共出现四次条件判断,每一个条件都成立,故输出结果为3,4,5,6. 9.在下面程序中,若输入x= ,则输出的y值为( ) INPUT x IF x>=0 THEN IF x>0 THEN PRINT “y=”;(π/2)*x-5 ELSE PRINT “y=”;0 ENDIF ELSE PRINT “y=”;(π/2)*x-3 ENDIF END A.0B.1C.3D. ★答案★ B 解析 由于 >0,故输出y= × -5=1, 故选B. 10.如图所示程序在开始运行后,通过键盘输入三个值3,24,7,则输出结果是( ) 程序: INPUT “a,b,c=”;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 A.3,24,7B.3,7,24 C.24,7,3D.7,3,24 ★答案★ C 解析 当a=3,b=24,c=7时,此时b>a,首先是a,b交换数值即a=24,b=3,c=7,又此时c>b,执行的程序是b,c交换数值,即b=7,c=3,所以a=24,b=7,c=3. 二、填空题 11.为了在运行下面的程序之后输出y=25,输入的x应该是________. INPUT x IF x<0 THEN y=(x+1)*(x+1) ELSE y=(x-1)*(x-1) ENDIF PRINT y END ★答案★ -6或6 解析 该程序的功能是求函数y= 的函数值, 由 或 得x=-6或x=6. 12.写出下面程序运行的结果: INPUT x IF x<=10 THEN p=x*0.35 ELSE p=10*0.35+(x-10)*0.7 END IF PRINT p END 若x=6,则p=________;若x=20,则p=________. ★答案★ 2.1 10.5 解析 此程序功能是求函数 p= 的函数值, ∴当x=6时,p=0.35×6=2.1, 当x=20时,p=3.5+0.7×(20-10)=10.5. 三、解答题 13.已知函数y= 根据输入x的值,计算y的值,设计一个算法并写出相应的程序. 解 算法分析: 第一步,输入x的值. 第二步,判断x的范围,若x>2.5,则用y=x2-1求函数值. 若x≤2.5,则用y=x2+1求函数值. 第三步,输出y的值. 程序如下: INPUT “x=”;x IF x>2.5 THEN y=x^2-1 ELSE y=x^2+1 ENDIF PRINT “y=”;y END 14.下面的程序是求一个函数的函数值的程序: INPUT x IF x<=0 THEN y=-x ELSE IF x<=1 THEN y=0 ELSE y=x-1 ENDIF ENDIF PRINT y END 若执行此程序的结果为3,则输入的x值为________. ★答案★ 4或-3 解析 此程序是求函数y= 的值.若输出的结果为3,则有可能x-1=3,即x=4或-x=3,即x=-3. 15.如图是一个计算函数y=f(x)的值的程序,若输出的y值为4,则输入的x值是________. INPUT x IF x<0 THEN y=(x+2)^2 ELSE IFx=0 THEN y=4 ELSE y=(x-2)^2 ENDIF ENDIF PRINT y END ★答案★ -4或0或4 解析 由题意知该程序的作用是计算分段函数 y= 的值. 当x<0时,若y=4,则(x+2)2=4,得x=-4; 当x>0时,若y=4,则(x-2)2=4,得x=4; 当x=0时,y=4,正好输出y=4. 故满足条件的x值为-4,0,4.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 条件语句 条件 语句