资源简介 (共45张PPT)水果连连看两个拐点相连角色数目分而治之思想思考与拓展两个拐点相连两个拐点检测总结与巩固分而治之思想1解决复杂问题太难了!把大问题拆分成容易解决的小问题庞大的宇宙宇宙银河系太阳系将宇宙“分割”,一步步探索宇宙的奥秘分而治之思想分而治之思想:把一个复杂问题分解成等价的规模较小的问题分别解决每个小问题把各个小问题的答案组合起来,就可以得到原问题的答案。应用:生活场景:搬运大件家具…编程算法:快速排序、归并排序…小球质量问题有16个小球,其中有15个一样重,有一个比其他小球轻。只有一个没有砝码的天平,用它找出质量较轻的小球。最少称几次可以找到质量较轻的小球?A. 2次B. 3次C. 4次D. 5次第一次称重第一步将16个小球分成两组,每8个一组,要找的小球就在重量较轻的那一组中第二次称重第二步①把8个小球分成三组,第一、二组分别有3个球,第三组有2个球②称第一组和第二组第三次称重第二次称重一样重→第3个球轻不一样重→较轻的球两个拐点相连2两个拐点无法消除是否水平相连 ?垂直相连 ?一个拐点 ?两个拐点 ?消除消除消除消除是是是否否否两个拐点:连接两个方块的线条转了两次弯,有两个拐点存在两个拐点无法确定两个拐点和被选中方块的位置关系连接被选中方块,有两个拐点的线条直线段 有一个拐点的线条线条上的任意一个拐点,和其中一个方块水平或垂直相连,和另一个方块用有一个拐点的线条相连拐点的要求拐点需要满足的条件是:①拐点处没有方块②拐点和其中一个方块水平或垂直相连,和另一个方块用有一个拐点的线条相连两个拐点如何确定拐点位置从序号为1的位置开始,依次检测各个位置是否能够作为拐点:序号1的位置是拐点吗?序号2的位置是拐点吗?不是不是...不是序号22的位置是拐点吗?选择1选择2拐点检测过程序号为21、22的位置是连接被选中方块的线条上的拐点吗?21 22选择1选择2①序号对应位置是否有方块?②序号对应位置和选择1是否水平(垂直)相连?③序号对应位置和选择2能否用一个拐点相连?两个拐点检测是否有方块?假设拐点1的序号否水平(或垂直)检测拐点1和选择1检测结果为1?一个拐点检测拐点1和选择2检测结果为1?拐点1的序号消除否否是是是两个拐点检测3任务五任务五:检测被选中的两个水果方块能否用有两个拐点的线条相连自定义积木存储拐点序号变量“中间拐点序号”存储要查找的拐点的序号拐点序号从序号为1的位置开始,依次向后检测:是否有方块如何检测当前选中的位置处是否有方块?没有方块时进行什么操作?检测是否有方块:如何没有方块,那么水平检测拐点拐点检测检测结果为1??是水平检测拐点和选择1?否变量“检测结果”变成不同的数值后,分别执行怎样的操作?两个拐点检测从序号为1的位置开始检测检测和选择2之间是否有一个拐点的线条相连检测和选择1是否水平或垂直相连判断此处是否有方块此处不能作为拐点两个拐点停止检测的条件是什么?1.最后一个位置检测完成:2.找到了正确的拐点位置,方块可以被消除:编程任务试一试:编写程序,实现对被选中的方块进行两个拐点检测两个拐点检测Step1:检测被选中的两个方块能否用有两个拐点的线条相连程序梳理1.连接被选中方块的线条上的两个拐点,和被选中的方块有什么关系?2.进行两个拐点检测的过程是什么?和其中一个方块水平或垂直相连和另一个方块连接的线条上有一个拐点从序号为1的位置开始,依次向后检测;首先判断此处是否有方块之后判断此处和选择1是否水平或垂直相连最后将此处和选择2进行一个拐点检测思考与拓展4不可消除的情况图中剩余的水果方块无法被消除,虽然看起来标注的水果方块可以用有两个拐点的线条相连。不可消除的情况为什么方块无法被消除?只检测方阵内,36个克隆体的位置处是否有拐点,没有考虑方阵外方阵外拐点检测如何实现方阵外的拐点检测“方阵外”拐点检测方阵外的位置没有序号和造型编号外圈方块的造型编号为0生成克隆体如何生成8×8且外圈为空的方阵?生成6×6克隆体方阵的过程:①建立“造型编号”列表,添加18对随机的造型编号到列表中②打乱列表顺序,使方块乱序出现③克隆生成6行6列,共36个克隆体④克隆体出现时,根据序号显示对应的造型添加随机数字只有36个随机造型的克隆体显示在舞台上添加18对随机的造型编号到列表中造型编号列表造型编号列表中存储的数字应该是怎样的“造型编号”列表存储的数字:第1~8项:列表项为0第9项:0;第10~15项:随机数字;第16项:0第17项:0;第18~23项:随机数字;第24项:0第49项:0;第50~55项:随机数字;第56项:0第57~64项:列表项为06组...造型编号列表1.添加8个数字0到“造型编号”列表2.添加中间行方块对应的造型编号:①添加数字0到“造型编号”列表②从temp-list中随机抽取6项移到“造型编号”③添加数字0到“造型编号”列表重复6次3.添加8个数字0到“造型编号”列表造型编号列表中间行第一个方块的造型编号添加8个数字0到“造型编号”列表中间一共6行中间行最后一个方块的造型编号添加8个数字0到“造型编号”列表生成克隆体显示的第一个方块的位置初始位置新方阵的检测检测过程相同,求解行列数的算式不同:8×8的方阵,外圈方块的造型编号为0水平检测:求行数垂直检测:求列数同一列相邻的克隆体间的序号差为8一个拐点检测:拐点序号=(行数-1)×8+8在最后一列:拐点序号=行数×8两个拐点检测:总结与巩固5角色数目水果连连看项目第四讲: 两个拐点相连一、 课程目标1、掌握问题分而治之的思想;2、掌握问题的拆分和自定义函数的调用;3、实现对被选中的两个水果方块进行两个拐点检测的功能。二、 课堂组织形式1、开放式问题讨论2、引导式思维发散3、问答式课堂互动4、针对问题探究实践5、学生动手制作项目6、课堂内容梳理巩固三、课堂准备编号 名称 内容 来源 备注【 1】 PPT 课件 课堂全流程演示文稿 火星科学盒官网【2】 课程资料 PPT 课件、讲义、视频 火星科学盒官网【 3】 教师参考程序 项目完整程序 网盘链接下载【4】 学生上课使用资料 笔记本电脑或者台式电脑 老师自备 电脑系统需求: win 10+,或 macOS 10.13+编程所需素材 网盘链接下载课堂报告 网盘链接下载【 5】 编程软件下载 scratch3.0 scratch 官网 课前下载安装四、主要脚本程序编号 详细内容 功能描述【 1】 “() 或()” 逻辑“或”,只要满足前后两个条件中的任意 一个,返回的值为真,两个条件都不满足时, 返回的值为假。五、上课流程本节课包括 5 步具体流程:(1)第 1 步为知识拓展。老师带领学生了解什么是分而治之的思想。时长控制在 15 分钟内。(2)第 2 步为思路分析。带领学生分析如何检测两个水果方块能否用有两个拐点的线条相连。时长控制在 15 分钟内(3) 第 3 步为作品编程。 逐步分析任务思路,编写程序, 实现检测两个水果方块能否用有两个拐点的线条相连的功能,满足时消 除被选中的方块。时长控制在 25 分钟内。(4) 第 4 步为拓展思考。 思考当连接两个被选中方块的线条上的拐点在方阵外侧时,如何检测拐点 。时长控制在 25 分钟内。(5)第 5 步为课堂总结, 知识图谱的形式总结课程内容,巩固重点知识点 。时长控制在 5 分钟内。上课步骤 主要内容 备注【第 1 步】 知识拓展 【对应 PPT】“分而治之 思想” 【时长】 15min 【引入】 有些时候, 我们会遇到一些看上去比较复杂的问题, 这些问题不容易一下子解决, 但是 我们可以想办法把它拆分成比较容易解决的小问题,一个个地理解和并解决。 【讲解】 1. 使用宇宙的例子引出分而治之的思想; 2. 讲解分而治之的思想,以及使用分而治之思想解决问题的步骤; 3. 使用分而治之的思想,解决用天平称重寻找次品小球的问题。【第 2 步】 思路分析 【对应 PPT】“两个拐点 相连” 【时长】 15min 【讲解】 1. 老师讲解什么是两个拐点相连的情况 2. 带领学生分析, 无法确定拐点和方块之间的位置关系时,如何将线条进行拆分。 3. 老师带领学生分析拐点需要满足的条件是什么 4. 讲解如何寻找拐点的位置 5. 总结如何进行两个拐点的检测,检测过程和条件是什么【第 3 步】 作品编程 【对应 PPT】“两个拐点 检测” 【时长】 25min 【衔接】 进行两个拐点检测的基本过程已经梳理完成了, 接下来开始编程完成两个拐点的检测。 【制作】 学生自定义进行两个拐点检测的积木(程序样例见“第六部分 - 程序 1-1”) 【讲解】 1. 带领学生添加新变量,记录其中一个拐点的序号; 2. 讲解如何从第 1 个位置开始,依次寻找可以作为拐点的方块; 3. 讲解假设的拐点位置和选择 1 处的方块如何进行水平和垂直检测; 4. 讲解在拐点和选择 1 处的方块水平或垂直相连后,如何对拐点位置和选择 2 处的方 块进行检测 【制作】学生编写程序, 实现对被选中的两个方块进行两个拐点检测(程序样例见“第六部分 - 程序 1-2”) 【总结】 以提问的形式带领学生总结任务五中完成的功能效果、任务要求和编程思路【第 4 步】 拓展思考 【对应 PPT】“思考与拓 展” 【时长】 25min 【衔接】 当连接两个方块的线条上的拐点在水果方块方阵外时,无法检测到这个拐点,被选中的 两个水果方块就无法消除,如何解决这个问题呢? 【讲解】 1. 老师带领学生分析,为什么被选中的水果方块看起来可以用有两个拐点的线条相 连,却无法消除 2. 讲解如何通过在方阵外圈增加方块的方式,让方块能够检测在方阵外的拐点 3. 带领学生复习生成 6×6 的方阵并使水果方块显示的过程 4. 讲解在生成 8×8 的外圈不显示的方阵时,如何生成随机列表 5. 讲解在打乱列表内容的过程中,如何将数字添加到“造型编号”列表中 6. 讲解如何修改生成克隆体的脚本 7. 带领学生分析需要修改拐点检测脚本中的哪些内容。 课 堂 时 间 充 裕 时,可以带领学 生把程序修改完 成; 不充裕的话, 学生只需要理解 原理即可。【第 5 步】知识巩固 【对应 PPT】“总结与巩 固” 【时长】 5min 老师根据ppt 中的知识图谱回顾本节课的主要内容,带领学生完成知识总结六、主要程序说明任务四: 检测被选中的两个水果方块能否用有一个拐点的线条相连程序样例编号 程序样例与说明 对应的角色1-1 【程序 1-1 描述】 进行水平检测、垂直检测和一个拐点检测之 后,如果变量“检测结果”的值仍然是 0,就进行两个拐点检测 【水果方块】1-2 【程序 1-2 描述】 进行两个拐点检测时,首先使用变量记录假设 【水果方块】的拐点位置,从第 1 个方块处开始寻找拐点,依次检测此处是否 有方块,和选择 1 是否水平或垂直相连,和选择 2 是否可以用有 一个拐点的线条相连,条件全部满足时,就可以消除方块; 不满 足时,就向后假设下一个位置是拐点。 展开更多...... 收起↑ 资源列表 第4.docx 第4节- 两个拐点相连.pptx