课件31张PPT。3.1 条件语句1.条件语句
在算法中,选择结构是一种基本结构,条件语句是表达选择结构最常用的语句.
2.If语句
形如下面的框图描述的算法都可以用If语句进行表示.其一般形式是:
If 条件 Then?
语句1
Else
语句2
End If【做一做1】 条件语句的一般格式是
If A Then
B
Else
C
End If
其中B表示的是( )
A.满足条件A时执行的内容
B.条件语句
C.条件
D.不满足条件A时执行的内容
解析:语句中的A表示条件,Else后面的C表示不满足条件A时执行的内容,而在Then后面的B表示满足条件A时执行的内容,故选A.
答案:A3.复合If语句
(1)格式:
If 条件1 Then
语句1
Else
If 条件2 Then
语句2
Else
语句3
End If
End If
(2)对应的算法框图如图所示.输入x;
If x<=-1 Then
① ?
Else
If ② Then?
y=x
Else
y=0
End If
End If
输出y.
则①处填 ,②处填 .?答案:y=-x x>2 思考辨析
判断下列说法是否正确,正确的在后面的括号里画“√”,错误的画“×”.
(1)一个完整的条件语句,可以出现多个End If.( )
(2)使用复合条件语句时,每一个条件语句都以“If”开头,以“End If”结束,程序中有几个“If”就有几个“End If”与之对应. ( )
(3)如果复合条件语句中有两个“End If”,那么最后一个“End If”是与最上面的第一个“If”对应的. ( )
答案:(1)√ (2)√ (3)√探究一探究二探究三思维辨析当堂检测对含有条件语句的算法的理解
【例1】 (1)当a=3时,下面的算法语句段输出的结果是( )
输入a;
If a<10 Then
y=2*a
Else
y=a*a
End If
输出y.
A.9 B.3 C.10 D.6探究一探究二探究三思维辨析当堂检测(2)算法程序如下:
输入x;
If x>1 Then
y=x+1/2
Else
y=2*x+1
End If.
输出y.
如果输出y的值为1,那么输入x的值为 .?探究一探究二探究三思维辨析当堂检测解析:(1)因为a=3<10,所以y=2a=2×3=6,故选D.若x≤1,则由y=2x+1=1,得x=0满足x≤1.
故输入x的值为0.
答案:(1)D (2)0
反思感悟给出一个用条件语句描述的算法,确定其运行结果、指出其算法功能或补充算法语句时,首先要明确If语句、复合If语句的格式要求,其次要理解条件语句的执行原理.还要特别注意对条件表达式的理解与分析.探究一探究二探究三思维辨析当堂检测变式训练1已知分段函数 编写算法语句,输入x的值,输出相应的y的值.
解算法语句如下:
输入x
If x<=10 Then
y=2*x∧2
Else
y=3 * x-10
End If
输出y.探究一探究二探究三思维辨析当堂检测用If语句描述算法
【例2】 (1)任意输入一个实数,如果它大于零,就输出它的倒数;否则,就输出它的相反数,试用算法语句描述该问题的算法.
(2)某电信部门规定:拨打市内电话时,如果通话时间不超过3分,则收取通话费0.2元;如果通话时间超过3分,则超过部分以0.1元/分收取通话费(t以整分计,不足1分的按1分计).试用语句描述该算法.
分析:问题显然与选择结构有关,故用条件语句描述算法.探究一探究二探究三思维辨析当堂检测解:(1)算法语句如下:
输入a;
If a>0 Then
y=1/a
Else
y=-a
End If
输出y.探究一探究二探究三思维辨析当堂检测(2)设c表示通话费用(单位:元),t表示通话时间(单位:分),用条件语句可以表示为:
输入t;
If t<=3 Then
c=0.2
Else
c=0.2+0.1*(t-3)
End If
输出c.探究一探究二探究三思维辨析当堂检测反思感悟1.If语句主要用来描述含有选择结构的算法,即条件语句是与选择结构相对应的.
2.条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小、求分段函数的函数值等,在用条件语句的时候,一定要注意条件语句的格式要求.探究一探究二探究三思维辨析当堂检测变式训练2算法步骤如下:
1.输入x;
2.判断x≤0是否成立,若成立,则z=-1;若不成立,则z=1;
3.z=z+1;
4.输出z.
试将上面算法用算法语句表示.
解:用语句描述为:
输入x;
If x<=0 Then
z=-1
Else
z=1
End If
z=z+1
输出z.探究一探究二探究三思维辨析当堂检测用复合If语句描述算法
【例3】叙述下面算法框图(如图所示)所表示的含义,并且用复合If语句描述该算法.分析:首先要理解算法框图的含义,根据对x值的判断输出不同的结果,可知它表示的是一个分段函数的求值,进而可以使用复合If语句写出相应结果.探究一探究二探究三思维辨析当堂检测解:算法框图的含义是:求分段函数的值.函数解析式为用If复合语句可以表示为:
输入x;
If x>=0 Then
y=3*x-1
Else
If x<-4 Then
y=4*x
Else
y=-1
End If
End If
输出y.探究一探究二探究三思维辨析当堂检测反思感悟使用复合If语句的注意事项及解决问题的步骤
1.使用复合If语句的注意事项
(1)使用范围:判断条件多于一个时.
(2)分清层次:编写条件语句时,要注意If和End If的配对使用及书写的格式.
2.利用复合If语句解决问题的步骤
(1)构思出解决问题的一个算法(可用自然语言).
(2)画出程序框图,形象直观地描述算法.
(3)根据框图写算法语句,即逐步把框图中的算法步骤用算法语句表达出来.探究一探究二探究三思维辨析当堂检测变式训练3下面是计算某种税款的算法过程,其算法如下:
1.输入金额x(注x≤5 000);
2.如果x≤2 000,那么y=0;
如果2 000那么y=0.05(x-2 000);
否则y=25+0.1(x-2 500);
3.输出税款y,结束.
请写出该算法的算法框图和相应的算法语句.探究一探究二探究三思维辨析当堂检测解:算法框图如图:
算法语句为:
输入x;
If x<=2 000 Then
y=0
Else
If x<=2 500 Then
y=0.05*(x-2 000)
Else
y=25+0.1*(x-2 500)
End If
End If
输出y.探究一探究二探究三思维辨析当堂检测设计条件语句时不严谨而致误 错解输入x;
If x<10 Then
y=3*x
Else
If x<20 Then
y=2*x
Else
y=x
End If
输出y.探究一探究二探究三思维辨析当堂检测正解输入x;
If x>0 And x<10 Then
y=3*x
Else
If x<20 Then
y=2*x
Else
y=x
End If
End If
输出y.探究一探究二探究三思维辨析当堂检测纠错心得本题一共出现了两处错误,一是误认为输入的是正数,忽略了条件“x>0”;二是忽视了复合条件语句的结构,漏掉了一个“End If”,要知道有几个“If”就有几个“End If”与之配对,否则程序无法运行.探究一探究二探究三思维辨析当堂检测解:算法框图如图所示.
算法语句如下:
输入a,b;
If a>=b Then
y=a-b
Else
y=b-a
End If
输出y.探究一探究二探究三思维辨析当堂检测1.下列求函数值的算法中需要用到条件语句的函数为 ( )
A.f(x)=x2-1
B.y=x3-1D.f(x)=2x
解析:求分段函数的函数值,需要用到条件语句.
答案:C探究一探究二探究三思维辨析当堂检测2.若输入t=4,则执行下面算法语句后输出的结果为 ( )
输入t;
If t<=4 Then
c=0.2+3.8*(4-t)
Else
c=0.2+0.1*(t-3)
End If
输出c.
A.4 B.0.2 C.0.1 D.0.3
解析:因为t=4,所以c=0.2+3.8(4-4)=0.2,故输出的结果为0.2.
答案:B探究一探究二探究三思维辨析当堂检测3.若执行下面算法语句后输出的结果是3,则输入x的值是( )
输入x;
If x>0 Then
y=x
Else
y=-x
End If
输出y.
A.0 B.3
C.-3 D.3或-3
解析:若x=3,则y=3;若x=-3,则y=-(-3)=3.
答案:D探究一探究二探究三思维辨析当堂检测4.输入x;
If x<4 Then
y=x
Else
If x<10 Then
y=2*x-6
Else
y=3*x-12
End If
End If
输出y.
若输入12,则输出结果为( )
A.12 B.18 C.19 D.24探究一探究二探究三思维辨析当堂检测解析:因为x=12,12>4且12>10,
所以y=3×12-12=24.
答案:D探究一探究二探究三思维辨析当堂检测5.用算法语句描述下列算法框图对应的算法. 解:用If语句可以表示为:
输入a;
If a>=0 Then
y=a2
输出y
Else
输出“是负数”
End If