高中数学《条件语句》
- 格式:doc
- 大小:91.50 KB
- 文档页数:4
“条件语句”要点精析所谓条件语句就是处理条件结构的算法语句,在程序设计中,它起到判断和选择的作用.学习时,要仔细体会条件语句的表示方法、结构和作用,能够用条件语句表示算法,不妨用它编一些简单程序,解决你学过的一些需要条件判断的数学问题.这样,你才会快速入门. 1.条件语句的基本格式IF—THEN—ELSE IF—THEN或(图2)(图1)说明:(1)在图1中,“条件”表示判断的条件,“语句1”表示满足条件时执行的操作内容;“语句2”表示不满足条件时执行的操作内容;END IF表示条件语句的结束。
计算机在执行时,首先对IF后的条件进行判断,如果条件符合,则执行THEN后面的语句1;若条件不符合,则执行ELSE后面的语句2。
(2)在图2中,“语句”表示满足条件时执行的操作内容,条件不满足时,结束程序;计算机在执行时首先对IF后的条件进行判断,如果条件符合就执行THEN后边的语句,若条件不符合则直接结束该条件语句,转而执行其它语句。
2.表达式2.1关系表达式在人教A版第18页例5的程序中,第5行是一个条件语句,其中的条件“d>=0”表达式,一般称为关系表达式,关系表达式是用关系运算符连接起来的式子,关系运算符常见有“大于>”、“小于等于<=”、“不等于<>”等.当关系表达式成立时其值为真(TRUE),当关系表达式不成立时其值为假(FALSE). 关系表达式的值既不是数值型量,也不是字符型量,而是一种新的数据类型——逻辑型(Boolean).2.2逻辑表达式在实际问题中,对于一些复杂的条件,还需要用几个关系表达式组合起来才能表示.比如,2<x<5就需要用2<x 和x<5这两个表达式来表示.将多个关系式用逻辑运算符连接起来的式子称为逻辑表达式.逻辑运算符有:(1)NOT (非):取操作数相反的值.即当操作数为真(TRUE )时,结果为假(FALSE).(2)AND (与):当两个操作数都为真时,结果才为真.(3)OR (或):当两个操作数都为假时,结果才为假.例如:(1)NOT (2>6)结果为TRUE ,NOT (7>6)的结果为FALSE.(2)(1<2)AND (2<3)的结果为TRUE ,(3<8)AND (5<9)的结果为FALSE.(3)(-1<5)OR (8<2)的结果为TRUE ,(6<0)OR (2<1)的结果为FALSE.3.条件语句的用法技巧3.1条件语句的THEN 或后面ELSE 都可以是语句组例1 从键盘上输入两个数,将它们从大到小的顺序打印出来,可用下面程序: 程序中ELSE 后面跟了一个由四个语句组成的语句组,其中前三句是实现了变量A 与B 值的变换.另外,条件语句中的条件都应该是具备逻辑值:真或假的表达式 ,BASIC 中的关系表达式和逻辑表达式都具有逻辑值.3.2条件语句可以嵌套.即条件语句中的THEN 或ELSE 后还可以跟条件语句.在多重嵌套时,应特别注意避免逻辑上的混乱,这里给出两种方法:一是将嵌套的内层条件语句放在外层条件语句中ELSE 的后面;二是采用多个并列的条件语句来完成,举两例说明.例2 已知函数()()()()⎪⎩⎪⎨⎧<-=+≥+=0530720122x x x x x x x f 编写一个程序,对每输入一个x 值,都得到相应的函数值.分析:这是一个分段函数,计算函数值必须先判断x 的范围,因而设计求函数值的算法必须用到条件结构,相应程序的书写也应用条件语句书写。
1.2.2 条件语句(结)[例1] 再写出相应的程序.[自主解答]程序为:INPUT “x=”;xIF x >=0 THENPRINT x END IFEND ——————————————————单支条件语句采用IF -THEN 的形式,IF 后对条件进行判断,若条件成立,则执行THEN 后的语句体;若条件不成立,则结束条件语句,执行END IF 后面的语句.——————————————————————————————————————1.画出程序框图并编写程序:任意输入三个实数,输出最小的数.解:INPUT a ,b ,cIF a>b THENa =bEND IFIF a>c THEN a =cEND IFPRINT aEND[例2] 已知函数y =⎩⎪⎨⎪⎧ x 2-1,x ≥0,2x 2-5,x <0,画出程序框图并编写一个程序,对每输入的一个x 值,都得到相应的函数值.[自主解答] 程序框图如下:程序如下: INPUT “x=”;xIF x >=0 THENy=x^2-1ELSEy=2*x^2-5END IFPRINT “y=”;yEND程序如下:PRINT——————————————————当算法中需要判断情况,分类执行时,要用到条件语句.条件语句是一个整体,且“IF”与“END IF”必须成对出现,若程序只对条件满足时作处理,不用处理条件不满足时的情况,则可以省略ELSE分支.——————————————————————————————————————2.当a=3时,下面程序输出结果是________.3y=2×3=6.答案:6条[例3] 某商场购物实行优惠措施,若购物金额x在800元以上(包括800元),打8折;若购物金额x在500元以上(包括500元),但不足800元,则打九折,否则不打折,设计程序框图并编写程序,要求输入购物金额x,能输出实际交款额y.[自主解答] 程序框图如下:程序如下:——————————————————1.对于实际应用问题,应先建立数学模型,再设计算法.2.条件语句的嵌套与条件结构的对应:3.在编写条件语句的嵌套中的“条件”时,要注意“IF”与“END IF”的配对,有时可以利用文字的缩进来表示嵌套的层次,以帮助对程序的阅读和理解.——————————————————————————————————————解:程序框图:程序:已知符号函数y =⎩⎪⎨⎪⎧ 1,x >0,0,x =0,-1,x <0,试编写程序输入x 的值,输出y 的值,并画出程序框图.解:法一(嵌套结构),如图法二(叠加结构),如图-1.程序框图应用什么语句来表达( ) A.输入语句B.条件语句C.循环语句 D.输出语句答案:B2.下列关于条件语句的说法正确的是( )A.条件语句中必须有ELSE和END IFB.条件语句中可以没有END IFC.条件语句中可以没有ELSE,但是必须有END IFD.条件语句中可以没有END IF,但是必须有ELSE答案:C3.当a=1,b=3时,执行完下面一段程序后,x的值是( )IF a<b THENx=a+bELSEx=a-bEND IFENDA.1 B.3 C.4 D.-2 解析:由a=1,b=3,a<b,得x=1+3=4.答案:C4.已知下面程序,写出相应的输出结果(1)若输入x=6,则p=________;(2)若输入x=12,则p=________.解析:(1)当x=6时,x≤10,则p=0.35x=6×0.35=2.1.(2)当x=12时,x>10,则p=10×0.35+(x-10)×0.7=3.5+2×0.7=3.5+1.4=4.9.答案:2.1 4.95.下面的程序是求一个函数的函数值的程序:若执行此程序的结果为3,那么输入的x 的值为________.解析:此程序是求函数y =⎩⎪⎨⎪⎧ -x ,x≤0,0,0<x ≤1,x -1,x>1.的值.解出结果为3,则有可能x -1=3,即x =4,或-x =3,即x =-3.答案:4或-36.有一个算法如下:第一步,输入x ;第二步,判断x >0?是,z =1;否则,z =-1; 第三步,z =1+z ;第四步,输出z .试写出上述算法的程序语句.解:程序如下:INPUT xIF x >0 THENz =1ELSEz =-1END IFz =1+zPRINT zEND。
解读条件语句
1.条件语句
处理条件分支逻辑结构的算法语句,叫做条件语句。
计算机通常是按照程序中语句出现的先后顺序依次往下执行的。
但有时需要根据某个给定条件是否满足而决定所要执行的语句,这时就需要条件语句。
2.条件语句的格式
(1)if语句的一般格式是:
if表达式
语句序列1;
else
语句序列2;
end
(2)if语句最简单的格式是:
if表达式
语句序列1;
end
3.条件语句的功能
条件语句主要用来实现算法中的条件结构,因为人们对计算机运算的要求并不仅限于一些简单的运算,而是经常需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同处理。
如判断一个数的正负,比较两个数的大小,对一组数进行排序等很多问题的解决,都需要用到条件语句。
4.编程的一般步骤
(1)算法分析:根据提供的问题,利用数学及相关学科的知识,设计出解决问题的算法;
(2)画出程序框图:依据算法分析,画出相应的程序框图;
(3)写出程序:根据程序框图中的算法步骤,逐步把算法用相应的程序语句表达出来。
例输入一个数,判断它是否是5的倍数。
分析判断一个数是不是5的倍数,只要把该数除以5取其余数,若余数为0,则该数为5的倍数,若余数不为0,则不是5的倍数。
解析:依上面的分析该题的程序框图如图所示。
根据程序框图,有下面的程序:
input“输入实数”;a
=
mod5
r a
if0
r
pr“是5的倍数”
int
else
pr“不是5的倍数”
int
end。
1.2.2条件语句
一、三维目标: 1、知识与技能
(1)正确理解条件语句的概念,掌握其结构。
(2)会应用条件语句编写程序。
2、过程与方法
经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
3、情感态度与价值观
了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。
通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。
二、重点与难点
重点:条件语句的步骤、结构及功能。
难点:会编写程序中的条件语句。
四、教学设计 (一)练习
1. 将两个数8,17a b ==交换,使17,8a b ==,下面语句正确一组是 ( B )
2. 计算机执行下面的程序段后,输出的结果是( B )
1a = 3b = a a b =+ b a b =- PRINT a ,b
A. 1,3
B. 4,1
C. 0,0
D. 6,0 3. 下列给出的赋值语句中正确的是( B )
A. 4M =
B. M M =-
C. 3B A ==
D. 0x y += 4. 阅读右边的程序,然后判断下列哪个是程序执行后的结果( D )
A 、5
B 、15
C 、11
D 、14 【创设情境】
试求自然数1+2+3+……+99+100的和。
显然大家都能准确地口算出它的答案:5050。
而能不能将这项计算工作交给计算机来完成呢?而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:条件语句和循环语句(板出课题) 【探究新知】 (一)条件语句
算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。
它的一般格式是:(IF-THEN-ELSE 格式) 当计算机执行上述语句时,首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句1,否则执行ELSE 后的语句2。
其对应的程序框图为:(如上右图)
在某些情况下,也可以只使用
件符合,就执行THEN 后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句。
其对应的程序框图为:(如上右图)
条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。
需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。
【例题精析】 〖例1〗:教材P25面例5 〖例2〗:编写程序,输入一元二次方程2
0ax bx c ++=的系数,输出它的实数根。
算法分析:我们知道,若判别式240b ac ∆=->,原方程有两个不相等的实数根
1x =
2x =若0∆=,原方程有两个相等的实数根122b
x x a
==-; 若0∆<,原方程没有实数根。
也就是说,在求解方程之前,需要首先判断判别式的符
号。
因此,这个过程可以用算法中的条件结构来实现。
IF 条件 THEN
语句 END IF
又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算1x 和2x 之前,
先计算2b
p a =-
,q =。
程序框图:(参照课本17P )
程序:(如右图所示)
注:SQR ()和ABS ()是两个函数,分别用来求某个数的平方根和绝对值。
即
()x =
SQR ,{(0)()-(0).
x x x x x ≥=
<ABS
〖例3〗:编写程序,使得任意输入的3个整数按从大到小的顺序输出。
算法分析:用a ,b ,c 表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a ,b ,c 表示,并使a ≥b ≥c. 具体操作步骤如下。
第一步:输入3个整数a ,b ,c.
第二步:将a 与b 比较,并把小者赋给b ,大者赋给a. 第三步:将a 与c 比较. 并把小者赋给c ,大者赋给a ,
此 时a 已是三者中最大的。
第四步:将b 与c 比较,并把小者赋给c ,大者赋给b ,
此时a ,b ,c 已按从大到小的顺序排列好。
第五步:按顺序输出a ,b ,c. 程序框图:(参照课本19P ) 程序:(如右框图所示)
〖补例〗:铁路部门托运行李的收费方法如下:
y 是收费额(单位:元),x 是行李重量(单位:kg ),当0<x ≤20时,按0.35元/kg 收费,当x >20kg 时,20kg 的部分按0.35元/kg,超出20kg 的部分,则按0.65元/kg 收费,请根据上述收费方法编写程序。
分析:首先由题意得:
{
0.35,020,
0.35200.65(20),20.
x x x x y <≤⨯+->=该函数是个分段函数。
需要对行李重量作出判断,因此,这个过程可以用算法中的条件结构
来实现。
程序: INPUT “请输入旅客行李的重量(kg )x=”;x
IF x>0 AND x<=20 THEN
y=0.35*x ELSE
y=0.35*20+0.65*(x-20) END IF
PRINT “该旅客行李托运费为:”;y END
【课堂精练】
1.P29 练习 1。
2。
3。
4 课后练习
1. 给出以下四个问题,
①x , 输出它的相反数. ②求面积为6的正方形的周长. ③求三个数,,a b c 中输入一个
数的最大数. ④求函数1,0
()2,0x x f x x x -≥⎧=⎨
+<⎩
的函数值. 其中不需要用条件语句来描述
其算法的有 (A )
A. 1个
B. 2个
C. 3个
D. 4个仅②不需要分情况讨论,即不需要用条件语句
2. 右程序运行后输出的结果为__22,-22__.
3. 当3=a 时,下面的程序段输出的结果是( D ) IF 10a < THEN
2y a =*
ELSE
y a a =* PRINT y
A. 9
B. 3
C. 10
D. 6
作业:《习案》作业六。