探究银行 ATM 机的工作程序
——4.3 运用选择结构描述问题求解过程教学设计
教材分析:
《4.3 运用选择结构描述问题求解过程》这一节中以“设计最佳网购方案” 这一项目为主线,依托三个实际问题,以培养信息素养为目标,以知识技能为载体,以项目学习活动为途径,开展自主、协作、探究学习,让学生掌握 Python 程序设计语言的选择结构的几种不同的表达形式以及在解决实际问题中的应用。
学情分析:
本课的授课对象高一年级学生,在本节内容学习之前,学生已经初步掌握了用算法解决问题的过程,学会了使用自然语言和流程图等方式来描述算法,并已经学习了顺序结构程序实现和 Python 基本知识——算术运算符和表达式、关系运算符和表达式以及逻辑运算符和表达式,具有编写简单程序的能力。分支结构不是非常难以理解的结构类型,学生本应该有能力依据学习任务,自主开展协作学习,建构知识,完成相应项目任务。
教学目标:
1、能够掌握程序的选择结构设计的基本流程。(计算思维)
2、能够掌握 Python 程序设计语言的选择结构的单分支 if 语句、双分支 if 语句、以及 if···elif···else 语句的一般格式及使用方法。(计算思维) 3、能够运用选择结构描述问题的求解过程。(信息意识、计算思维、数字
化学习与创新、信息社会责任)
教学重难点:
重点:
1、程序的选择结构设计的基本流程。
2、能够掌握 Python 程序设计语言中选择结构的单分支 if 语句、双分支 if
语句以及 if···elif···else 语句的格式及使用方法。
难点:
1、Python 程序设计语言的选择结构的单分支 if 语句、双分支 if 语句、if 语句的嵌套以及 if···elif···else 语句的一般格式及使用方法。
2、能够运用选择结构解决生活中的问题。
教学方法:
项目学习法、讲授法、小组合作探究法。
教学过程:
一、新课引入(2 分钟)
教师:随着信息技术的发展,人工智能悄无声息地走进了我们的生活,也改
变着我们的生活。比如说停车场的无感支付取代了传统的人工收费;餐厅的自助点餐系统解决了人们排长队点餐的麻烦;快递柜的出现提升了快递查找的精准性和便利性;银行的 ATM 机在极大方便客户的同时也提高了银行的工作效率……
请同学们思考一下,这些技术的背后都离不开什么?
学生:思考回答问题。(计算机程序)
教师:没错,就是计算机程序。今天我们就以银行的 ATM 机为例,来探究程序是如何支持这些设备工作的。
设计目的:通过讨论,学生发现并明确问题,确定本节课的项目主题。培养学生的信息意识。
二、新课讲授
1、项目分析
教师:既然要探究 ATM 机,我们首先要了解 ATM 机的操作流程,你们使用过ATM 机吗?知道ATM 机是如何操作的吗?请同学们在纸上设计出ATM 机
的操作流程。
学生:以同桌两位同学为一个小组,设计 ATM 机操作流程并展示介绍设计的 ATM 机的操作。
教师:根据同学们刚才的所说的 ATM 机的使用流程(展示设计好的流程图)
我们今天这节课首先来探究微项目一 ATM 机密码的校验程序。下面再请同学们思考日常生活中密码校验的过程。
学生:各小组同学在项目学习单上规划出密码校验的过程。
教师:用流程图描述算法:
提问:密码校验算法的核心是什么?
学生:学生回答教师提问。(判断)
教师:这里密码校验的核心就是要对密码进行判断,其实生活中的判断几乎
无所不在,我们每天都在做着各种各样的选择:走在岔路口时,我们要判断是向左还是向右?高考选科时,我们要根据自己的兴趣和特长去判断到底是选历史还是选物理?警察同志发现司机有饮酒驾车的行为时,要通过测量人体血液中酒精的含量去判断司机到底是酒驾还是醉驾……在 python 程序中我们如何表达选择和判断呢?这就需要用到选择结构。
教师:下面我们就来看看选择结构中几种不同的表达方式。单分支条件语句;
双分支条件语句;多分支条件语句。
首先介绍单分支条件语句语法格式及其注意要点:
学生:听教师介绍单分支条件语句。
教师:第二种选择结构形式叫做双分支条件语句,介绍双分支条件语句的语法结构,及其注意要点。
提问:根据我们刚才学习的知识,大家觉得密码校验的程序是使用单分支还是双分支呢?
学生:回答教师提出的问题(双分支)。
教师:下面请同学们根据刚才学习的选择结构语句的知识,编写 ATM 机密码验证的程序。
学生:编写程序
教师:巡视指导,请学生展示编制好的程序。
学生:展示程序,并说出在编写程序的过程中遇到的问题,又是如何解决这个问题的。
设计目的:通过密码校验程序项目的分析和制作,让学生了解多分支条件语句的含义,培养学生的计算思维。
2、多分支选择结构
教师:刚才我们探究了 ATM 机的密码校验程序,我们现在已经可以成功登
陆 ATM 机了,接下来我们就要选择即将办理的业务,也就本节课要探究的微项目二:选择办理业务程序的编写。请同学们思考 ATM 机可以办理哪些业务?
学生:ATM 机可以办理取款、存款、转账、查询、修改密码……等业务。
教师:那么我们可以同时办理这些业务吗? 学生:回答教师提问(不可以)。
教师 :也就是说我们需要在多个业务中,选择其中一项进行办理,这就需要用到选择结构的第三种形式——多分支选择结构。
展示多分支条件语句的语法格式并讲解要点:
教师:我们在 ATM 机上选择要办理的业务是通过什么来选择的?
学生:回答教师提出的问题 (按键)。
教师:我们学习的知识有限,我们暂时无法用 python 程序做出按键的效果。
我们怎么解决这个问题呢?如何在我们编制的程序中让用户选择要办理的业务的呢?
学生:小组讨论后分享方案。
教师:总结方案:我们可以把选择业务的按键看成一个个数字,由用户向计算机输入数字,然后让程序去判断接收到哪个数字,就办理那个业务。
学生:在项目学习单上设计规划算法,并尝试编写代码。教师:巡视指导。
学生:各小组派代表分享设计的业务选择程序。
设计目的:通过银行 ATM 机业务选择项目的分析和制作,让学生更容易理
解多分支条件语句的含义,培养学生的计算思维。
3、拓展延伸
教师:我们刚才探究了 ATM 机密码的校验以及业务的选择功能,接下来我
们要做的就是各种业务的具体办理,比如如何输入存款信息,如何表示存款后余额的变化等等,由于时间的原因,同学们可以利用学习的知识课后去把这些内容完成,下节课带到课堂上分享。
设计目的:通过项目的完善,激发学生深度学习,培养学生自主探究学习的能力。
4、本节课总结
教师:本节课我们通过探究银行 ATM 机工作程序,了解了选择结构的三种不同的形式:单分支条件语句;双分支条件语句;多分支条件语句。
提问:请同学们思考:我们在输入密码时,如果密码输入不正确,能不能一直反复操作下去。
学生:回答教师提问。(不可以,如果允许一直反复操作,一些不法分子可
能就会通过不停的测试,把拾到或者盗取来的银行卡密码测试出来。)
教师:怎么解决这个问题呢?
学生:思考讨论后回答,在编写程序的时候设置允许重复操作的次数。
教师:重复即使循环,这也是我们下节课要探究的程序的另外一个重要的程序结构循环结构。
设计目的:总结本节课知识点,用问题引出下节课学习内容,培养学生的学习兴趣和自主探究能力。
教学反思:
选择结构是学生学习算法和程序设计遇到的第一个比较复杂的问题,同时也是具有一定挑战的内容。本节课通过探究银行 ATM 机工作程序,引导学生先思考ATM 机的操作流程,再分析 ATM 机如何进行密码校验和业务选择的过程,从而设计出程序的算法,再根据教师所提示的选择结构的语法格式完成程序的编写。课程最后提出思考问题:如何限制用户输入密码的次数,又让循环结构的运用呼之欲出,为下节课的内容做好铺垫。整节课的设计一环紧扣一环,让学生有事可做, 学生参与度很高。在教学中设计了小组合作,但是由于项目的实施过程中学生也可以独立完成,就没有体现出小组合作的优势,这是需要改进的地方。