内容正文:
4.3 非数值计算
(1) 项目目标分析
通过生活中的实际问题,了解分支思想,并学会应用二分查找解决实际问题;
通过游戏实例,体验递归算法,并尝试用计算机来解决问题。
(2) 项目内容分析
强调“项目—任务—活动”结构与核心素养达成的一体化设计思想,强调在项目的真实情境下,通过任务的达成,展开一系列活动,在活动过程中通过搭建思维支架,不断建构知识,发展思维,使得生活、学习、知识技能、思维发展浑然一体,最终促进学生核心素养的全面、均衡发展。“项目—任务—活动”式结构不是一个静态的结构,它反映了学生知识建构与思维生成的动态过程。知识建构、思维发展乃至核心素养的形成都是在特定情境中围绕活动而自然生成的。
如果说本单元4.1为模仿阶段,4.2为形象思维阶段,4.3就是抽象思维阶段。本项目的重点应是基本思想和方法的教学,要能够恰当地引导,就能够使学生准确地领悟思想,从而较好地掌握基本方法。
分治是最常用的算法设计思想,查找是算法中最常见的操作,递归是算法在实现时的常用手段。
本节我们将围绕项目“生活中的算法”展开学习,尝试用计算机的视角去解决实际问题。本项目主要包含“巧翻字典”和“玩转‘汉诺塔’游戏”两个任务。任务一主要介绍分治中最经典的二分思想;任务二借助汉诺塔游戏重在介绍递归思想及算法实现。
(3) 项目教学建议
针对学生的认知水平及认知习惯,通过引导、启发、设问等方式,为学生设置真实项目或问题情境,在活动中为学生知识建构关键点和思维生发关键点搭建思维支架,使学生在自主探究或解决问题的过程中产生较强的学习动机,在不断发现中习得知识、发展思维、提升能力。
在该课程的教学方法上,应以程序设计的实例带动语言知识的学习,把程序设计当作科学方法的训练,把语言知识的应用作为技能的培养,全面推行“模仿——形象思维——抽象思维”三个由浅入深的阶段的教学。
学生的主要活动是积极思考、广泛交流、主动探究。他们学到的不仅仅是新知识,更重要的是学会了解决问题的方法,知道了什么时候、在什么地方去应用所学的知识。
任务一通过巧翻字典的情境引出二分查找的思想,分治的思想学生很容易理解,理解二分查找也不是难点,算法的实现需要给学生充足和时间和必要的帮助。
任务二汉诺塔问题,重点应落在对问题状态的描述及状态间的转移上。在4.2中回顾了函数的定义及调用方式,为递归函数设计做了很好的铺垫。
$$