资源简介 《用穷举法设计程序》教学设计专业 计算机应用 年级 高二 学生数 42课时 1课时40分钟 授课类型 新授课 授课时间 2020.8.29教材分析 本次上课内容源自高等教育出版社出版的中等职业教育规划教材,《可视化编程应用基础—Visual Basic》项目2,该项目着重介绍了循环结构和分支结构,其中练习与思考部分要求学生会用穷举法设计程序解决问题。 我对教材的内容进行了适当调整,将素数判定更换为求解水果题,同时,用火神山医院的规划设计作为故事背景,对百马百担问题进行了情景重设,以更富有趣味性的教学案例激发学生的学习兴趣。 穷举法是程序设计中应用最广泛的重要算法之一,学好本节课的内容对提升学生计算机编程能力,深入理解计算机程序原理有着重要的作用。学情分析 本次授课对象是中职计算机应用专业二年级的学生,他们思维活跃,勤于动手实践,对编程兴趣浓厚,但他们缺乏刻苦钻研的精神,遇到困难比较容易放弃。 通过对课前学生的预习情况进行数据分析,我了解到70%的学生已经掌握了穷举法的相关理论知识。然而,只有30%的学生能够进行编程解决问题,极少数学生能够同时考虑穷举算法的优化。教学目标 知识与技能 会用循环嵌套构建穷举算法解决问题。 通过减少穷举次数,实现算法优化。过程与方法 ①通过线下“二问二测二评”,循序渐进,由简入繁,掌握穷举法的代码实现。 ②借助“程序耗时排行榜”,激励学生不断钻研算法优化方案,知难而上。情感态度与价值观 通过正面引导、积极肯定,培养学生会钻研、会思考、会自主学习的能力与核心素养。教学重点 用循环嵌套构建穷举算法解决问题。教学难点 通过减少穷举次数优化算法,提升程序运行效率。教学方法 教法 混合式教学 任务驱动学法 自主学习 合作学习教学资源 网络学习空间:蓝墨云教学平台。 数字资源:导学微课,知识检测,教学辅助程序(计算穷举次数,显示穷举所消耗的时间)。教学过程设计基于网络学习空间的“三段六步”精准课堂教学模式教学环节 教师活动 学生活动 设计意图课前精准导学 第一步发布任务 通过蓝墨云平台发布《用穷举法设计程序》学习任务。 登录蓝墨云学习平台明确学习任务。 明确学习任务,为课堂教学明确主题与目标。第二步云端自学 组织开展《用穷举法设计程序》云端教学,利用导学微课、知识检测等各种数字媒体资源,引导学生自主学习本节课的内容。 ①填写问卷 ②学习课前章节内容,并观看微课视频 ③完成课前小题测验,并编程解决“水果题”,上交程序。 培养学生自主学习能力。第三步学情分析 授课前一天,教师在后台收集班内每位学生看视频的时间和练习的结果,了解到70%的学生已经掌握了穷举法的相关理论知识。然而,只有30%的学生能够进行编程解决问题,极少数学生能够同时考虑穷举算法的优化。 用云端学生自学情况聚焦问题,进而调整后续课堂教学目标和重难点。课中精准施教 第四步探究学习 自学点评①讲评学生课前作业完成情况 ②通过提问的方式引导学生回顾课前学习内容,一起归纳穷举法的相关知识点。 思考并回答问题,与老师一起归纳和整理课前所学习的知识。 巩固课前知识第一问:如何将理论付诸于实践,用代码实现穷举算法解决问题呢? 水果题 香蕉、苹果、西瓜分别代表什么数字?请用穷举法设计程序,找出所有答案的组合。第一评:教师请成功解出水果题的几位学生上台展示程序,与大家一起分享解题思路,并给予学生充分的肯定和鼓励。 学生上台为大家展示自己的程序,分享自己的心得。 积极肯定学生的自学成果,激励学生学会自主学习,学会展示自我。提炼知识: 通过对学生代码的归纳,引出用循环嵌套的方式构建穷举算法,并提炼出其中的三个关键点: 1、穷举变量 2、变量的变化范围 3、答案的验证条件 通过对代码的分析和提炼,学习如何用循环嵌套的方式构建穷举算法,并时刻关注其中的三个关键点。 掌握用穷举法设计程序的基本思路和方法,为接下来的实践做好充分的准备。第一测: ①提供操作素材。 ②提示操作时间为8分钟。 学生自主探究,上机实践,再一次尝试动手编程,求解水果题,并上交程序。 通过第一个案例,学生初步掌握用循环嵌套的方式实现穷举算法。第二问:火神山医院规划设计 疫情期间,中国火神山医院拔地而起,从方案设计到建成交付仅用10天,被誉为中国速度。 假如你现在是一名建筑设计师,打算在住院部用1200 m2的建筑面积设立50个病房,其中大病房占地40m2,中病房占地30m2,小病房占地20m2,而且三类病房都要有,请问共有多少种不同的组合方案?分析问题,设计算法: 引导学生关注本案例中的三个关键: 有几个穷举变量? 每个变量的变化范围如何?答案的验证条件该如何写? 学生根据事先分好的小组进行组内讨论,通过填写学案,列出方程组,分析和研究问题,设计算法。 分析问题,设计算法,明确三个关键,为实践操作做好准备。第二测: ①为学生提供操作素材。 ②提示操作时间11分钟。 在这个问题中,穷举变量的变化范围明显比上一个案例更大,我将微妙级计时器和数据通信功能编入学生的操作素材当中,一旦学生正确求出所有的组合,就会将学生程序的耗时以数据通信的方式发送到教师服务端,呈现在屏幕上,实时更新。 学生自主探究,上机实践,编程求解,并随时关注程序效率排行榜,钻研如何通过减少穷举次数来优化算法,提高程序运行效率。 ①这种形式极大地刺激了学生对程序优化的动力,遇到困难不再轻言放弃,而是积极钻研和思考,知难而上。 ②通过数据采集和处理,实时关注课堂,实现精准教学。第二评: ①依据收集到的排行榜数据,教师在学生操作的过程中,对未完成程序的学生进行点拨。 ②在学生操作结束以后,请排行榜前几名的学生展示他的优化方案,充分肯定学生的钻研成果。 展示自己的程序,讲解自己的代码和解题思路,并说说自己在算法优化上做了哪些努力,说明优化的具体方案。 充分肯定学生的钻研成果,集思广益,学生通过互相学习,掌握优化穷举算法的可行办法。归纳: 教师引导学生对各种优化方案进行归纳总结,穷举算法的剪枝策略大致有两个方向: ①根据题意缩减穷举变量的变化范围。 ②通过方程移项减少一个穷举变量。 学生根据学习到的知识,对自己的程序进行完善,并提交作品。 学会如何通过减少穷举次数优化穷举算法,提升程序的运行效率。小结:借助板书引导学生一起回顾本节课的主要内容。板书第五步数据诊断 通过网络学习空间云端数据记录和分析,结合线下课堂记录,为每一位学生制定了学习报告,帮助学生找到自身问题,对症下药。课后精准把脉 第六步云端辅导 巩固基础: 教师将课上两个案例的讲解演示制作成微课发布到平台,要求学生回顾课堂内容,同时进行一对一云端辅导。 根据数据诊断,借助空间,针对不同学生的学习需求为他们提供不同的学习资源,进一步实现个性化学习和发展性学习。应用实践: 完成教师指定的课后拓展练习“九宫格巧妙填数”。融会贯通: 自己设计一个穷举案例,并进行讲解和操作演示,将其录制成视频上传学习平台。教学反思: ①本节课以穷举算法为主题,利用蓝墨云班课构建师生知识交流的平台,帮助学生提前预习课堂知识。 ②基于混合式教学,通过课前精准导学,课中精准施教,课后精准把脉三段六步教学模式,培养了学生会钻研、会思考、会自主学习的能力与核心素养,同时以火神山案例激发学生的民族自豪感,达成了情感目标。 ③在线下二问二测二评环节中,借助自主编写的教学辅助程序,不仅极大地激发了学生的学习兴趣和求知欲,同时也在活动过程中,锻炼了学生计算思维和逻辑能力,为学生渗透了程序优化的思想,突破了难点。《用穷举法设计程序》学案穷举法思想按照一定的顺序或者规律将问题可能涉及的情况一一列举出来根据问题的条件逐个进行判断,找出符合条件的解穷举算法的三个关键穷举变量的个数穷举变量的变化范围答案的验证条件穷举算法代码基本模式For 穷举变量1 = ?to ?For 穷举变量2 = ? to ?。。。If 条件 Then 输出结果。。。Next穷举变量2Next 穷举变量1“小小设计师”问题分析、算法设计设大病房数为x,中病房为y,小病房为z,根据题意列出方程______________________________________________________________三个未知数,只有两条方程,能够求解答案吗?若使用穷举算法设计程序此题共有几个穷举变量?每个变量的变化范围如何?答案的验证条件如何编写?请尝试编写程序。思考优化穷举算法,减少穷举次数,应该从哪些方面入手呢? 展开更多...... 收起↑ 资源预览