人教课标版高中数学必修三《基本算法语句第2课时》教案1新版.docx
《人教课标版高中数学必修三《基本算法语句第2课时》教案1新版.docx》由会员分享,可在线阅读,更多相关《人教课标版高中数学必修三《基本算法语句第2课时》教案1新版.docx(30页珍藏版)》请在冰点文库上搜索。
人教课标版高中数学必修三《基本算法语句第2课时》教案1新版
1.2基本算法语句
第2课时
1.2.2条件语句
一、教学目标
1.核心素养
通过学习条件语句,培养学生基本的数学抽象、数学建模和数据处理能力.
2.学习目标
(1)理解条件语句的功能和一般格式;
(2)能准确运用条件语句表达解决具体问题的方法;
(3)在具体问题解决过程中,培养学生逻辑思维能力和表达能力.
3.学习重点
(1)条件语句的格式和用法;
(2)用自然语句、程序框图描述的包含条件结构的算法转化为伪代码的过程.
4.学习难点
(1)将具体问题的条件结构框图转化为条件语句的过程;
(2)复合条件语句中的逻辑关系的理解.
二、教学设计
(一)课前设计
1.预习任务
任务1
阅读教材P25—P29,思考:
条件语句的功能是什么?
它有怎样的格式要求?
任务2
举两个条件结构的算法例子,画出程序框图,并进一步写成程序语言.
2.预习自测
1.下列关于条件语句的叙述正确的是()
A.IF语句中必须有ELSE和ENDIF
B.IF语句中可以没有ENDIF
C.IF语句中可以没有ELSE,但必须以ENDIF结束
D.IF语句中可以没有ENDIF,但必须有ELSE
【解析】条件语句有2种不同的格式,一种格式中没有ELSE,但两种格式都有ENDIF,故A、B、D错误,C正确.
解:
C
2.条件语句的一般形式是“IFATHENBELSEC”,其中B表示的是()
A.不满足条件时执行的内容B.条件语句
C.条件D.满足条件时执行的内容
【解析】本题属于条件语句的理解,关键是明确THEN和ELSE后面表示的意义.首先对程序进行分析,该条件语句意义为“如果条件A成立,则执行B;否则,执行C”;于是可知B是在A成立时执行的步骤,再结合各选项即可得到答案.
解:
D.
(二)课堂设计
1.知识回顾
(1)输入语句格式:
输出语句格式:
赋值语句格式:
(2)算法的条件结构:
算法的流程根据条件是否成立有不同的流向,这种处理算法的结构称为条件结构.
如图①②所示.
2.问题探究
问题探究一为什么要学习条件语句?
●活动一阅读与思考,了解学习条件语句的必要性
引例1某市居民用水收费的方法是:
水费=基本费+超额费+损耗费.若每月用水不超过10t,只付基本费8元和每户每月的定额损耗费1元;若用水超过10t,除了付上面的基本费和损耗费外,超过部分每立方米付2元的超额费.试写出该市居民每月应付的水费y(元)的一个算法,并画出程序框图.
详解:
设该市居民每月的用水量为xt,则
上述函数就是该市居民每月水费的一个算法,程序框图如图所示.
问题:
你能编写出以上问题的计算机程序吗?
要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的条件语句.
问题探究二什么是条件语句,它们有怎样的格式要求,具有什么样的功能?
.重点、难点知识★▲
●活动一阅读与思考,初步认识条件语句
引例2下面这个计算机程序是什么结构?
实现什么样的功能?
你能画出它的程序框图吗?
详解:
该算法是条件结构,功能是“任意输入一个自变量
的值,输出函数
函数值
”.
其程序框图如图.
变式:
在这个程序中,你们觉得哪些是条件语句?
详解:
条件语句是IF
THEN
ENDIF
●活动二条件语句的格式与功能
算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句.它的一般格式是:
(IF-THEN-ELSE格式)
当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2.其对应的程序框图为:
(如上右图)
在某些情况下,也可以只使用IF-THEN语句:
(即IF-THEN格式)
计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句.其对应的程序框图为:
(如上右图)
条件语句的作用:
在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去.需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理.
●活动三两种语句的辨析
(1)共同点:
两种语句首先都要对条件进行判断,然后才执行相应的语句体;执行完语句体后,程序都交汇于一点完成条件语句;都以IF开始,以ENDIF结束.
(2)区别:
IF-THEN-ENDIF语句只有一个语句体,是满足条件时执行的语句体;IF-THEN-ELSE-ENDIF语句含有两个语句体,满足条件时执行一个语句体,不满足条件时执行另一个语句体.
问题探究三条件语句在算法中的应用?
重点、难点知识★▲
●活动一初步运用,条件语句的识别
例1某程序如下图,如果输出的y值是4,那么输入的x的所有可能的值是________.
【知识点:
算法的条件语句】
详解:
①x<0时,
②x>0时,x2-3x=y=4⇒x=4
综上:
点拨:
对于包含两个分支的条件语句,采用IF—THEN—ELSE进行书写.
●活动二根据条件程序框图写程序
例2已知程序框图如下图所示,写出相应的程序.
【知识点:
算法的条件语句】
详解:
程序如下:
例3已知程序:
说明其功能并画出程序框图.
【知识点:
算法的条件语句】
详解:
该程序的功能为求分段函数
的值.
程序框图为:
点拨:
条件语句在程序框图中能让计算机执行IF后表示判断的“条件”.在判断框中,语句体1表示满足条件时执行的操作内容,放在判断框中“是”后的执行框中;语句体2表示不满足条件时执行的操作内容,放在判断框中“否”后的执行框中.
●活动三运用条件语句编写程序
例4编写程序,使得任意输入的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.
程序:
(如右框图所示)
点拨:
先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来.
例5某商场购物实行优惠措施,若购物金额x在800元以上(包括800元),打8折;若购物金额x在500元以上(包括500元),则打九折,否则不打折,设计算法程序框图并编写程序,要求输入购物金额x,则输出实际交款额.
【知识点:
算法的条件语句】
详解:
本题的实质是求函数
的值.程序框图如下:
程序如下:
点拨:
解答本题可以先由题意建立函数模型,然后由模型编写算法,最后由算法写出程序.
3.课堂总结
【知识梳理】
算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句.它的一般格式是:
(IF-THEN-ELSE格式)
在某些情况下,也可以只使用IF-THEN语句:
(即IF-THEN格式)
【重难点突破】
当判断条件多于一个时,若重复应用条件语句,书写程序繁琐,可利用条件语句的嵌套写.
(1)在编写条件语句的嵌套中的“条件”时,要注意IF和ENDIF的配对,常常利用文字的缩进来表示嵌套的层次,以便于程序的阅读和理解.
(2)理解条件语句的嵌套时,要分清内层条件语句与外层条件语句,内层的条件结构是外层条件结构的一个分支.
4.随堂检测
1.在条件语句中
IF A THEN
B
ELSE
C
END IF
其中B表示的是()
A.不满足条件时执行的内容B.条件语句
C.条件D.满足条件时执行的内容
【知识点:
算法的条件语句】
【解析】该语句的执行过程是:
对条件A进行判断,若满足,则执行语句B,否则执行语句C.故选D
解:
D
2.已知部分程序如下:
IFx>0THEN
y=x^2语句体1
ELSE
y=2*x语句体2
ENDIF
则下列说法正确的是()
A.条件成立时,先执行语句体1,再执行语句体2,最后结束条件语句
B.条件不成立时,先执行语句体2,再执行语句体1,最后结束条件语句
C.条件成立时,先执行语句体1,再结束条件语句
D.条件成立时,先执行语句体2,再结束条件语句
【知识点:
算法的条件语句】
【解析】IF-THEN-ELSE-END-IF语句的执行过程中,条件成立时,先执行语句体1,否则执行语句体2,再结束条件语句.故选C.
解:
C
3.阅读下列程序,则该程序运行后,变量y的值为()
INPUT“x=”;4
IFx>3THEN
y=x*x
ELSE
y=2*x
ENDIF
PRINTy
END
A.4B.16C.6D.8
【知识点:
算法的条件语句】
【解析】因x=4满足“x>3”的条件,所以执行的是“THEN”后面的y=4×4=16.
解:
B
4.已知程序如下:
若是输入9,其运行结果是.
【知识点:
算法的条件语句】
【解析】这个程序用到了IF-THEN-ELSE条件语句,当输入9时,9≥0,故运行结果为9.
解:
9
(三)课后作业
基础型自主突破
1.下列关于条件语句的说法正确的是()
A.条件语句中必须有ELSE和ENDIF
B.条件语句中可以没有ENDIF
C.条件语句中可以没有ELSE,但是必须有ENDIF
D.条件语句中可以没有ENDIF,但是必须有ELSE
【知识点:
算法的条件语句】
【解析】条件语句主要有两种形式的格式,分别是IF-THEN-ENDIF格式或IF-THEN-ELSE-ENDIF格式.所以条件语句中可以没有ELSE,但是必须有ENDIF,选C.
解:
C
2.如图所示程序进行后,变量y的值是()
A.3B.6C.9D.27
【知识点:
算法的条件语句】
【解析】由程序可知,x=3时,y=33=27.
解:
D
3.若输入8,则下面程序执行后输出的结果是()
A.0.2B.0.7C.0.8D.1
【知识点:
算法的条件语句】
【解析】由t=8,得c=0.2+0.1×(8-3)=0.7.
解:
B
4.阅读下面的程序,若分别输入0,1,4,8,9,10,则输出的结果是()
INPUT “x=”;x
IF xMOD4=0 THEN
PRINT x
ENDIF
END
A.0,8B.4,8C.0,4,8D.0,1,4,8,9,10
【知识点:
算法的条件语句】
【解析】算法的功能是输入一个数,判断其是否能被4整除,若能,则输出该数.故选C.
解:
C
5.给出如图所示的程序:
执行该程序时,若输入的x为3,则输出的y值是________.
【知识点:
算法的条件语句】
【解析】x=3时,条件x>3不成立,执行y=2*x=2×3=6.
解:
6
能力型师生共研
7.下面程序在开始运行后,通过键盘输入三个值3、24、7,则输出结果是()
程序:
A.3,24,7B.3,7,24C.24,7,3D.7,3,24
【知识点:
算法的条件语句】
【解析】当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.
解:
C
8.给出程序:
该程序的功能是:
已知函数y=________,输入自变量x的值,输出其对应的函数值.
【知识点:
算法的条件语句】
【解析】分析程序中各变量、各语句的作用,再根据伪代码所示的顺序,可知:
该程序的作用是计算分段函数
的函数值.
解:
9.完成如图所示的程序,输入x的值,求函数y=|8-2x2|的值.①_____;②_____.
INPUT “x=”;x
IF ①____THEN
②____
ELSE y=2*x^2-8
END IF
PRINT y
END
【知识点:
算法的条件语句】
【解析】根据ELSE后的语句为y=2x2-8,故条件①应为8-2x2≥0,即-2≤x≤2,写出语句为x≥2ANDx≤2;②应为y=8-2x2.
解:
①x≥-2ANDx≤2②y=8-2x2
10.已知函数
对输入的每一个x值,都得到相应的函数值,画出程序框图并写出程序.
【知识点:
算法的条件语句】
【解析】由题中给出的分段函数可知,需画出条件结构的程序框图,使用IF-THEN-ELSE-ENDIF格式的程序,用x≥0作为判断条件,从而得出答案.
解:
程序框图:
程序:
INPUTx
IFx≥0THEN
y=x2-1
ELSE
y=2*x^2-5
ENDIF
PRINTy
END
探究型多维突破
11.给出如下程序.(其中x满足:
0程序:
(1)该程序用函数关系式怎样表达.
(2)画出这个程序的程序框图.
【知识点:
算法的条件语句】
【解析】本题主要考查了程序框图的两种表示方法的相互转换,解答本题的关键在于了解程序中的相关英文表示.根据程序语句,找到分段函数的区间,得到相关的函数;找到判断条件,将相应的语句转换为相应的框图即可,判断语句用菱形表示.
解:
(1)函数关系式为y=
(2)程序框图
12.铁路部门托运行李的收费方法如下:
y是收费额(单位:
元),x是行李重量(单位:
kg),当0<x≤20时,按0.35元/kg收费,当x>20时,20kg的部分按0.35元/kg,超出20kg的部分,则按0.65元/kg收费.
(1)请根据上述收费方法编写程序.
(2)试编写程序进行印刷品邮资的计算.(不超过100g收0.7元,以后每增加100g加收0.4元,不足100g按100g计算)
【知识点:
算法的条件语句】
【解析】由题意,可知这是一个定义域分为两段的分段函数,易得0<x≤20时y=0.35x,x>20时y=7+(x-2)×0.65,即得答案,
(2)的解法与此类似,不再赘述.
(1)的算法步骤如下:
1.输入行李的重量x;
2.如果0<x≤20,那么y=0.35x,输出运费y;
3.如果x>20,那么y=0.35×20+0.65(x-20),输出运费y.
解:
(1)
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
(2)程序如下:
INPUT“请输入印刷品重量(g):
”,x
IFx<=100THEN
y=0.7
ELSE
y=0.7+0.4*FIX(
ENDIF
PRINT y
END
自助餐
1.以下关于条件语句的说法,正确的是()
A.条件语句的执行是按照程序中的先后顺序执行的
B.条件语句实现了程序框图中的条件结构
C.条件语句不能嵌套,即条件语句中不能再使用条件语句
D.条件语句一定要完整,即IF-THEN-ELSE-ENDIF中每一部分都不能少
【知识点:
算法的条件语句】
【解析】条件语句中,如果条件成立,执行THEN后的语句;如果不成立,则执行ELSE后的语句,故条件语句的执行是有选择的,A错;当条件不成立时,不需要任何操作时,可以省略ELSE及其后的语句,故D错;条件语句可以嵌套,C错.
解:
B
2.已知程序如下:
INPUTa
IFa>=0THEN
PRINTSQR(a)
ELSE
PRINT“是负数“
ENDIF
END
若输入-4,则输出结果为()
A.-4B.4C.是负数D.2
【知识点:
算法的条件语句】
【解析】该程序先a进行判断;若a≥0,则输出
;a<0,则输出“是负数”.-4<0,所以应输出“是负数”.
解:
C
3.给出下列程序:
如果输入x1=2,x2=3,那么执行此程序后,输出的结果是()
A.7B.10C.5D.8
【知识点:
算法的条件语句】
【解析】执行算法,由于x1=2,x2=3,故x1≠x2,故y=x1+x2=2+3=5.
解:
C
4.阅读下列程序:
若输入x=-2,则输出结果为()
A.2B.-12C.10D.-4
【知识点:
算法的条件语句】
【解析】由题意,输入x=-2时,则x<0,执行“y=7”.
解:
D
5.下列程序:
若输入的数是83,则输出的结果为()
A.83B.38C.3D.8
【知识点:
算法的条件语句】
【解析】该程序功能是输入一个两位数的正数,变换其个位与十位的位置,输入83,输出应为38.
解:
B
6.条件语句
的一般格式是()
【知识点:
算法的条件语句】
【解析】条件语句有两种格式:
分别是IF—THEN格式和IF—THEN—ELSE格式,本题考查后者根据条件语句的结构,排除B、D.在程序框图中,图形符号“平行四边形”表示一个算法输入和输出的信息,排除A.
解:
C
7.对于如下程序,若输入m=-4,则输出的数为()
A.9B.-7C.5或-7D.5
【知识点:
算法的条件语句】
【解析】因为-4>-4不成立,则m=1-(-4)=5,故输出m=5.
解:
D
8.给出一个如图所示的程序,若要使输入的x值与输出的y值相等,则这样的x值的个数是( )
A.1B.2C.3D.4
【知识点:
算法的条件语句】
【解析】当x≤1时,y=x2=x,解得x1=0,x2=1;当x>1时,y=2x-5=x,解得x3=5;故x可取0,1,5.
解:
C
9.给出下列程序:
若输出的结果是5,则输入的x=________.
【知识点:
算法的条件语句】
【解析】令2x+1=5,则x=2>1成立;令x+6=5,则x=-1>1不成立,故答案为2或-1.
解:
2或-1
10.INPUT“x=,y=”;x,y
上述程序运行的结果为________.
【知识点:
算法的条件语句】
【解析】执行程序,因为x=5,故y=-20+3=-17.故x-y=5-(-17)=22,2x+y=2×5+(-17)=-7.
解:
22,-7
11.给出下列程序:
如果输入-10,-26,8,那么输出的是________.
【知识点:
算法的条件语句】
【解析】根据题意,可知该程序的功能是输入a,b,c的值,求它们中的最小值.
解:
-26
12.根据下列程序,画出相应的程序框图.
INPUT x
IF x<0 THEN
y=-x+1
ELSE
IF x=0 THEN
y=0
ELSE
y=x+1
END IF
END IF
PRINT y
END
【知识点:
算法的条件语句】
【解析】由条件语句的定义可知该程序的作用是计算并输出分段函数:
,依据已知的算法语句及算法对应的分段函数,将对应的语句转化为相应的框图,可得答案.
解:
程序框图如图所示: