内容正文:
2.2 算法的控制结构 1课时(教学设计)
年级
高一年级
授课时间
课题
2.2 算法的控制结构
教学
目标
1.了解算法的三种基本控制结构:顺序结构、分支结构、循环结构;
2.能够根据实例区分和描述不同的控制结构;
3.能够根据实际需要选择恰当的控制结构并设计算法,提升利用信息技术学科素养;
教学
重难点
重点:了解算法的三中基本的控制结构。
难点:能够根据实际选择恰当的控制结构并设计算法解决问题。
教学
准备
多媒体课件、多媒体教室
教学过程
教师活动
学生活动
新
课
导
入
一、课堂导入
1.通过呈现一张搭积木的图片来对学生进行提问:同学们拼过积木没有呢?
玩过积木的人都知道,即使很复杂的积木作品,都是由最基本的积木块(不妨称为基本结构)通过各种组合构成的。
无论内容怎样复杂、功能如何强大的算法,也都由基本的结构组合而成,这些基本的结构称为算法的控制结构。
通过图片和提问的方式导入教学,激发学习热情和探究欲望。
新 知 讲 授
一、顺序结构
同请同学们尝试描述交换一杯水和一杯可乐的过程。
展示三个杯子a、b、c,让同学们讨论流程。
开始→将杯子a中的可乐倒进杯子c中→将杯子b中的水倒进水杯a中→将杯子c中的可乐倒进杯子b中→结束。
以一个交换水的优秀引出本小节内容,激发同学们的学习兴趣。
概念:顺序结构指的是算法中各个步骤按照先后顺序依次执行的结构。
图例:
顺序结构的算法执行时,必定具有下列特点:
①每个步骤按照算法中出现的顺序依次执行。
②每个步骤一定会被执行一次,而且只执行一次。
以关键词为导向一一罗列出顺序结构的概念、图例和特点,让同学们在循序渐进中学习知识。
如果你要外出,需要购买火车票,请描述一下购买过程。
严格按照顺序依次进行各步操作→顺序结构的应用
在知识讲解后以一个案例进行巩固,让同学们能够活学活用。
二、分支结构
以身边的例子为导向引出小节的主题,让同学们在相互探讨并结合之前学习过的流程图来分析该问题,从而激发同学们的学习热情,并培养同学们自主学习和相互探究的学习能力。
某超市为了对苹果进行促销,规定苹果原价5元,购买3千克以上的,超过3千克的部分可以在原价的基础上打6折。上节课同学们是用语言描述付款的算法,这节课就需要同学们分支结构来描述。
这种先进行条件判断,再根据判断结果分别执行不同处理的控制结构就称为分支结构(也称选择结构)。
从上面的流程图可知,分支结构在执行时具有下列特点:
①首先进行条件判断,根据条件满足与否来决定执行哪个分支;
②在一个分支结构中,必定有一个分支被执行,其他的分支则被忽略。
结合分支结构的概念和特点,让同学们以此入手,结合案例,将知识点进行内化和吸收,将疑难消化于课堂之中。
案例讲解
一个一元二次方程是否存在实数根,需要根据条件“b2– 4ac≥0”是否成立来判断。如果条件成立就输出“有实数根”,否则就输出“无实数根”。
我们如何用分支结构的流程图表示出来呢?
用流程图描述分支结构的算法时,流程线会从条件判断框(菱形)上面的角进入,在进行条件判断后,从条件判断框的左、右或者下面的角走向各个分支。
在解决问题的一个完整算法中,有时需要几种控制结构的协同才能完整地表示解决问题的全部过程。
从粗到细的算法细化容
如果对判断方程是否有实数根不做细化,那么整个算法是顺序结构,即先执行第一步“输入方程系数a,b,c的值”,然后再按照顺序执行第二步“根据系数判断方程是否有实数根并赋值给变量f ”。如果将算法进一步细化,那么原来第二步处理就需要用分支结构来实现。
吸收案例讲解后,让同学们举一反三,相互探讨并分析其应用场景,促进同学们的知识能力的提升。
同学们相互之间探讨一下,说一说分支结构的应用场景有哪些呢?
①判断一个数是否为正数、负数或零
②判断一个日期是否是周末或工作日
③实现基本的菜单选择系统等
三、循环结构
以同学们每天都会遇到的案例进行知识点的引入,更能引起同学们的共鸣和知识的迁移。
同学们,思考智能电饭煲是如何煲饭的?煲好的饭是如何保温的?
1.电饭煲煲饭及保温原理
(1)温度传感器监测电饭煲内部的温度变化。
(2)当米饭煮熟后,温度会上升到一个特定值,此时电饭煲判断煮饭完成。自动切换到保温模式。
(3)当处于保温状态时,加热控制电路会根据温度传感器反馈的信息来控制加热元件的工作。如果温度低于设定的保温温度,加热控制电路就会启动加热元件,对电饭煲内部进行加热,循环执行。
2.结合电饭煲煲饭及保温原理,同学们思考一下循环结构的定义及组成。
(1)定义
在条件的控制下,某些操作步骤需要重复执行的控制结构就是循环结构。
(2)组成
循环控制结构通常由以下几个部分组成:
初始化部分:在进入循环之前,通常需要进行一些初始化操作,例如设置循环变量的初始值。循环条件:这是一个布尔表达式,用于判断是否继续执行循环。只要循环条件为真,循环就会继续执行。
循环体:这是在循环中重复执行的代码块。
3.循环结构特点
(1)重复执行,循环控制结构的主要特点是能够重复执行;
(2)条件控制,循环的执行是由特定的条件控制的。这个条件可以是一个表达式,当条件为真时,循环继续执行;当条件为假时,循环终止;
(3)通过重复执行相同的代码块,循环控制结构可以大大提高算法的执行效率。
展示循环结构算法的流程图→所示的算法在执行时,如果循环条件始终满足,那么循环体永远会被执行,此时算法陷入“死循环”,也就违背了算法的有穷性特征。因此,算法在设计时应避免此类情形的发生。
将两种控制结构进行对比,让同学们在对比中感受两种控制结构的异同点,这样更有利于知识的掌握和两个知识点之间的迁移学习。
4.分支or循环
判断依据:
分支结构:条件是否成立只判断1次
循环结构:条件是否成立往往判断多次
5.讨论探究
超市收银系统
具有一定规模的超市,收银通常由超市管理系统来完成。收银时,收银员用扫描仪逐个扫描商品上的条形码,随着一连串的“嘀”声,收银员可以快速地完成顾客所购商品的费用结算。
为了开发一个超市管理系统中的收银子系统,需要针对收银员的收银过程设计一个算法来解决上面所述的收银问题。
分析:一个完整的超市管理系统是由通信网络、计算机(包括服务端
和客户端)、计算机程序等组成的综合系统。在商品上超市货架之前
会有一个数据录入环节,通过数据录入,每个商品的编码、数量、价格等数据会保存到超市管理系统的数据库中。收银过程中,扫描仪扫描条形码,本质上是将条形码对应的商品编码输入到计算机中,然后再以输入的编码为关键字,从已有的数据库中查找与之相符的商品数据(如商品名称、价格)并进行金额统计结算。
在通常的超市收银子系统中,收银员可按“结算”键来告诉系统,商品数据输入结束并开始结算。
根据上述分析,可以确定算法需要解决以下问题:
(1)输入每个商品的编码,即时显示商品的相关信息(编码、商品名称、价格)。根据所有输入商品的数据统计顾客的应付总金额并输出结算清单。
(2)根据问题要求,算法应先根据输入的商品编码在数据库中找到对应商品的数据。然后显示当前商品的数据,将当前商品的价格累加到应收总金额中,同时即时显示当前应收总金额。
(3)处理完当前商品后,需要继续输入下一个商品的编码,并重复上述处理。这个重复过程可以用循环结构来实现。当按“结算”键时,算法应能退出循环,并输出结算清单。
为方便上述算法的描述,可以事先做出一些符号化的设定。用code表示商品的编码,用sum表示顾客应付的总金额,用x表示每个商品的价格。
综上所述,解决该问题的算法可用如下图所示的流程图来描述。
展示解决超市收银问题的算法流程图
6.拓展链接
程序设计中的“累加器”
“累加器”指的是算法执行过程中对同类事物或数据进行统计计算的实现技术。上述算法中的“sum←sum+x”就起到了累加的作用。
四、小结
五、课堂小练
以一个交换水的优秀引出本小节内容,激发同学们的学习兴趣。
以关键词为导向一一罗列出顺序结构的概念、图例和特点,让同学们在循序渐进中学习知识。
在知识讲解后以一个案例进行巩固,让同学们能够活学活用。
以身边的例子为导向引出小节的主题,让同学们在相互探讨并结合之前学习过的流程图来分析该问题,从而激发同学们的学习热情,并培养同学们自主学习和相互探究的学习能力。
结合分支结构的概念和特点,让同学们以此入手,结合案例,将知识点进行内化和吸收,将疑难消化于课堂之中。
吸收案例讲解后,让同学们举一反三,相互探讨并分析其应用场景,促进同学们的知识能力的提升。
以同学们每天都会遇到的案例进行知识点的引入,更能引起同学们的共鸣和知识的迁移。
将刚才的例子继续引入到本知识点中,进行知识的迁移和强化。
将两种控制结构进行对比,让同学们在对比中感受两种控制结构的异同点,这样更有利于知识的掌握和两个知识点之间的迁移学习。
以一个超市收银系统的例子对本节的知识点进行一个总结,让同学们更好的掌握知识点。
课
堂
练
习
(有题有答案有解析)
1.在图中使用的算法基本结构是( )
A.顺序结构 B.选择结构 C.框架结构 D.循环结构
答案:B
解析:本题主要考查算法基本结构。由图可知,图中使用的算法基本结构是选择结构,故本题选B选项。
2.下列不属于算法控制结构的是( )
A.循环结构 B.选择结构 C.顺序结构 D.递归结构
答案:D
解析:本题考查算法的控制结构。D选项正确,算法控制结构是指在算法设计中用于控制程序流程的结构。它决定了算法中各个步骤的执行顺序和方式,对于实现算法的功能至关重要。常见的算法控制结构有顺序结构、选择结构(分支结构)、循环结构;没有递归结构,因此本题选择D。
3.以下流程图的控制结构属于
A.选择结构 B.循环结构 C.树形结构 D.顺序结构
答案:A
解析:本题考查算法的控制结构。由图可知,该流程图的控制结构属于选择结构,用选择结构表示算法时,流程图中必定包括一个判断框,满足条件时执行一个处理框,不满足条件时执行另一个处理框。
4.以下有关选择结构说法正确的是( )
A.选择结构可以根据不同的条件执行不同的代码块
B.选择结构的条件表达式只能是关系表达式
C.在选择结构中,无论条件是否成立,都会执行其中的一个分支
D.选择结构只能有两个分支
答案:A
解析:本题考查选择结构。A选项正确,在选择结构中,只有当条件成立时,才会执行相应的分支,所以,选择结构可以根据不同的条件执行不同的代码块,这是选择结构的基本功能,B选项错误,选择结构的条件表达式可以是关系表达式、逻辑表达式等,C选项错误,只有当条件成立时,才会执行相应的分支,D选项错误,选择结构可以有多个分支,如多分支选择结构,故本题正确答案为A。
5.如果要重复执行一段代码,直到某个条件不满足为止,应使用( )控制结构
A.顺序结构 B.选择结构 C.循环结构 D.逻辑结构
答案:C
解析:本题考查的是循环结构的定义,C选项正确,循环结构的特点就是能够重复执行一段代码。其中,while循环就是在条件为真时不断地执行循环体中的代码,直到条件变为假。故正确答案为C。
6.如果一个算法中既有顺序执行的部分,又有根据条件选择执行的部分,还包括重复执行的部分,那么这个算法包含了( )控制结构
A.仅顺序结构
B.顺序结构和选择结构
C.顺序结构、选择结构和循环结构
D.仅循环结构
答案:C
解析:本题考查的是算法的基本控制结构,算法基本控制结构包括顺序结构、选择结构、循环结构,任何算法均会使用顺序结构,顺序结构是最简单的控制结构。在顺序结构中,算法的各个操作按照书写的先后顺序依次执行。选择结构根据给定的条件进行判断,然后根据判断结果决定执行不同的分支,循环结构用于重复执行一段代码,直到满足特定的条件为止。根据题目表述,本题包含三种结构,故正确答案为C。
7.题图为求“实数x绝对值”问题的算法流程图,在1处应该填入( )
A.x=0 B.x=-y C.y=x D.y=0
答案:C
解析:本题主要考查算法流程图。题图为求“实数x绝对值”问题的算法流程图,因此当x>=0时,y=x,反之y=-x,故本题选C选项。
课
堂
小
结
1.顺序结构指的是算法中各个步骤按照先后顺序依次执行的结构。
2.顺序结构的算法执行时,必定具有下列特点:
①每个步骤按照算法中出现的顺序依次执行。
②每个步骤一定会被执行一次,而且只执行一次。
3.这种先进行条件判断,再根据判断结果分别执行不同处理的控制结构就称为分支结构(也称选择结构)。
4.分支结构在执行时具有下列特点:
①首先进行条件判断,根据条件满足与否来决定执行哪个分支。
②在一个分支结构中,必定有一个分支被执行,其他的分支则被忽略。
5.用流程图描述分支结构的算法时,流程线会从条件判断框(菱形)上面的角进入,在进行条件判断后,从条件判断框的左、右或者下面的角走向各个分支。
6.算法执行过程中,在条件控制下,某些操作步骤需要重复执行(循环)的控制结构称为循环结构。
7.“累加器”指的是算法执行过程中对同类事物或数据进行统计计算的实现技术。
反
思
评
价
本节课对顺序结构、分支结构、循环结构等做出了详细的讲解,通过学生讨论,进而引导学生观察不同类型的流程图,引出课题算法的控制结构,学生回答问题,有关顺序结构、分支结构、循环结构等的学习,提高了学生对顺序结构、分支结构、循环结构等的理解。
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$