版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高中信息技术必修一4.3非数值计算教学设计一、教学内容分析《非数值计算》是教科版高中信息技术必修一《数据与计算》第四单元"计算与问题解决"的第三节。本单元前两节分别以数值计算为主线,引导学生体验用计算机解决问题的基本过程。本节将视野从"数的运算"拓展到"非数值对象的搜索与判别",是串联算法思维与分治策略的关键一课。本课以教科版教材中"查找汉字编码"为核心任务载体。学生在日常生活中习惯了使用搜索引擎和各种输入法,却很少思考:计算机如何在成千上万个汉字中快速定位目标?为什么"查字典"可以用二分法而不会从头翻到尾?这些问题的本质是把数据组织成有序结构,再设计高效算法进行检索。教材通过"顺序查找"与"二分查找"的对比,让学生体会算法效率的差异,理解有序数据与二分策略之间的内在联系,进而认识到算法设计的优劣直接影响程序的执行效率。从学科核心素养看,本课重点培养计算思维:一是抽象与建模,把"查字典""猜价格"转化为在有序数据序列中查找关键值的问题;二是算法设计,经历从朴素算法到优化算法的推导过程;三是问题分解,将大问题递归地缩小规模,体会分治思想。同时,通过对比实验,让学生用数据说话,树立"用计算思维解决实际问题"的意识。二、学情分析授课对象为高一年级学生。经过前两个单元的学习,学生已经掌握Python基本语法,能使用循环、分支结构编写简单程序,会用列表存储和遍历数据,具备读写二维表格数据并调用函数解决问题的初步能力。学生的困难主要在三个方面。其一是思维惯性:面对"查找",绝大多数学生会本能地写从头到尾逐一比较的循环,难以自发产生二分策略,需要借助生活情境唤醒其经验。其二是边界处理:二分查找中low、high、mid三个变量的更新逻辑极易出现死循环或漏查,学生在调试中常常找不到症结。其三是对"效率"缺乏量化认识:若不提供实测数据,"二分更快"只是一句口号,必须通过扩大数据规模到几千、几万条,让学生看到毫秒级的悬殊差异。基于此,本课采用"情境激趣—朴素建模—策略优化—实验验证—迁移应用"的学习路径,让学生在真实任务产生的认知冲突中主动寻求更优算法。三、教学目标1.能说出非数值计算的含义,列举生活中典型的非数值计算场景(查找、排序、判别、路径规划等),理解数据组织方式对算法选择的影响。2.能用Python实现顺序查找算法,理解循环遍历逐一比较的基本思想,能正确统计比较次数。3.能通过"猜数字"游戏体验二分策略,理解二分查找"每次排除一半"的思想,能在教师引导下完成二分查找程序,正确处理low、high与mid的更新逻辑。4.能通过扩大数据集规模的对比实验,用实测数据说明两种算法在比较次数与运行时间上的差异,建立算法效率意识,初步理解算法复杂度比较的意义。5.在小组合作中形成表达、倾听与质疑的习惯,体会"好算法源于对问题结构的洞察",发展批判性思维与计算思维。四、教学重点与难点教学重点:二分查找算法的设计思想及其Python实现;通过对比实验理解算法效率差异。教学难点:二分查找中区间边界的更新规则与循环终止条件;将生活经验抽象为可计算的问题模型。五、教学策略与方法本课采用任务驱动与合作探究相结合的策略。以"在5000个汉字编码记录中查找指定汉字"为贯穿任务,设置梯度递进的三个子任务:朴素实现、策略优化、实验论证。借助机房网络教室环境,学生两人一组使用Python(已安装pandas库)完成实验;教师通过极域广播系统进行演示与屏幕分享,使用在线协作表格汇总各组实验数据,形成班级层面的统计证据。六、教学准备教师准备:汉字编码数据文件(chinese_code.csv,含约7000条记录,字段为"汉字"与"区位码",按编码升序排列);"猜价格"课堂游戏道具(价格标签若干);教师用参考程序两份(顺序查找与二分查找);课堂学习任务单;计时与比较次数统计代码模板。学生准备:复习Python列表遍历、range函数与循环结构;具备基本的程序运行与调试经验。七、教学过程(一)情境导入:查一个字,要翻多少页(约7分钟)教师现场创设情境:给出一段乱码文本,提出需求——现在要到汉字编码表里查"酷"字的区位码。编码表有7000条记录,已打印成300页的册子。提问:如果你只能一页一页翻,最坏情况下要翻多少页?有没有同学平时查字典从来不从第一页开始翻?请说说你是怎么查的。学生活动:一位学生演示查字典动作——先翻到中间,看偏旁的拼音位置,判断目标在前一半还是后一半,再翻到剩余部分的中间……两三步就锁定了目标字。教师追问:同样是查一个字,"从头翻"和"折半翻"的差别在哪里?计算机面对7000条、70万条记录时,这个差别会被放大到什么程度?板书课题:非数值计算——查找的艺术。同时明确:字符、图像、声音这些对象参与的计算都属于非数值计算,查找是其中最基本的操作之一。【设计意图】用生活经验激活认知冲突,让学生意识到"有巧劲可查",为二分策略的引出埋下伏笔;同时点明本节在整个计算版图中的位置,避免把查找当成孤立的语法练习。(二)任务一:朴素而可靠的顺序查找(约12分钟)教师下发数据文件chinese_code.csv,并提出任务一:编写程序,输入一个汉字,在数据中找到它的区位码并输出;若不存在,输出"未找到"。同时要求统计程序一共比较了多少次。学生独立建模:读取csv文件,把汉字列存入列表names,把编码列存入列表codes。核心逻辑为对列表从头到尾遍历,逐一与目标比较。教师广播示范关键代码并解释:count=0foriinrange(len(names)):count+=1ifnames[i]==target:print(codes[i],"比较次数:",count)breakelse:print("未找到")学生运行程序,分别查找"中"(位置靠前)、"酩"(位置靠后)以及一个不存在的字,记录比较次数。教师提问:如果目标在最后一行,或者根本不存在,要比较多少次?(7000次)这个算法的特点是——可靠、不挑数据,但代价随数据规模线性增长。【设计意图】先让学生建立"默认解法",承认其正确性,再用实测的比较次数制造"不够快"的切身感受,为优化提供动力。加入比较次数统计变量,为后续实验统一度量标准。(三)任务二:游戏化体验二分策略(约10分钟)教师组织"猜价格"游戏:一件商品价格在1到100元之间的整数,每次出价后主持人只回答"高了"或"低了",谁能用最少的次数猜中?学生现场试玩两轮,师生共同归纳最优策略:第一次猜50,如果没有猜中,就把范围缩小一半;继续在剩下的范围中取中间值,直到命中。理论上7次以内必猜中。教师引导抽象:把游戏翻译成计算机能执行的描述。设下界low、上界high,每次取中点mid=(low+high)//2,比较目标与中点处的值:若相等则成功;若目标更大则low=mid+1;若目标更小则high=mid1。当low>high时说明不存在。关键追问:为什么这个策略能用在这种查字典的场景,却不能用在随便一摞没整理的纸条上?(数据必须有序!)这正是数据组织方式决定算法选择的典型案例。【设计意图】二分思想是本课的灵魂,不能靠讲。游戏让每个学生身体先行、直觉先行,再用变量和语句把直觉显性化。关于"有序"的追问直指算法适用的前提条件,培养严谨性。(四)任务三:实现并调试二分查找(约13分钟)学生分组尝试完成binary_search(names,codes,target)函数。教师巡视,观察典型错误:一是low与high更新时忘记加减1导致死循环;二是mid计算写成了(low+high)/2产生浮点下标;三是未找到时缺少low>high的判断。教师选择一段含典型错误的学生代码投屏,引导全班"找茬":运行它,看看会发生什么?为什么停不下来?请用三行小规模数据手工模拟:low=0,high=7,target在位置2,追踪mid序列。完成后的参考实现:defbinary_search(names,codes,target):low,high=0,len(names)1count=0whilelow<=high:mid=(low+high)//2count+=1ifnames[mid]==target:returncodes[mid],countelifnames[mid]<target:low=mid+1else:high=mid1return"未找到",count学生用自己的程序查找"中""酩"和不存在的字,记录比较次数,与任务一的结果并排写在任务单表格中。【设计意图】"程序会写但写不对"是常态,把典型错误变成全班共享的学习资源,借助小数据手工模拟培养调试能力,这正是计算思维的操练过程。返回值同时包含结果与比较次数,为实验环节做准备。(五)任务四:用数据说话——效率对比实验(约10分钟)教师布置实验:小组任选5个汉字(含1个不存在的),分别用两种算法查找,记录比较次数,填入班级在线汇总表;再用time模块测量各1000次查找的总耗时。各组数据汇总后,教师引导全班读表:顺序查找平均约3500次比较,二分查找平均不到13次;时间差距是什么数量级?若数据量从7千扩大到7百万,顺序查找的比较次数变成多少倍,二分查找呢?师生共同得出结论:顺序查找的次数与数据量成正比,数据翻十倍它翻十倍;二分查找的次数增长极慢,数据每翻一倍它只多一次。教师顺势点明:计算机科学用"数量级"刻画这种差异,前者称为线性增长,后者与以2为底的对数同阶,这也是分治思想的威力所在。【设计意图】让学生自己做实验、自己读数据,把抽象的效率概念转化为可感知的数字。班级汇总表提供了统计视角,避免单次结果的偶然性,同时渗透以证据支撑结论的科学态度。(六)课堂小结与拓展(约3分钟)学生用一句话在任务单上写下本节课最大的收获,教师随机请3人分享,随后总结三点:非数值计算同样遵循"问题分析—算法设计—程序实现—验证优化"的过程;数据是否有序决定了可以选择哪种算法;评价算法不能只看"对不对",还要看"快不快、省不省"。拓展思考:二分查找能否直接用在按字母排列的英文单词表、按时间排列的历史事件表中?请为其中一种场景画出查找过程的区间示意图,下节课交流。八、板书设计主板书分三栏。左栏:非数值计算——查找问题;顺序查找:逐一比较,次数≈数据量。中栏:二分查找四要素,low、high、mid的更新规则图示(数轴上区间不断减半的示意)。右栏:实验结论,1000→约500次对约10次;数据有序是二分的前提;算法效率要比较、要实测。九、作业布置基础题:修改本课程序,改为在按姓名拼音排序的学生名单中查找指定学生,并输出其学号。提升题:某图书馆有50万册按索书号排序的图书,用二分查找最多需要多少次定位一本图书?写出推理过程,并用Python验证你的结论。拓展题(选做):调查手机通讯录或电商平台的搜索功能,思考它们在数据未完全有序时采用了什么思路,写一段150字左右的说明。十、教学反思本课实施后需要重点记录三块证据:一是学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年房屋安全隐患排查测试题及答案
- 2026年导管相关感染防控考核试题及答案
- 2026年班组安全例会开展实务考试试卷试题及答案
- CCC认证专业试题及答案
- 工作礼仪考核试题及完整答案
- PS理论考题及精准答案呈现
- 地方立法工作岗位笔试考试题完整版及答案
- 茶艺师高级工职业技能鉴定模拟试卷
- 2026年遵义公务员(行政职业能力测验)考前冲刺试题解析
- 小儿脑炎试题及答案
- 2025年道路运输企业安全生产管理人员复训题库及答案
- 阳光房施工技术总结
- GB/T 46237-2025信息技术数字孪生能力成熟度模型
- 全国矿业权评估师资格考试真题及答案矿业权评估实务
- 物流代理加盟合同范本
- 天然气运输管理方案
- 新老师做课件的步骤
- 工业自动化设备维护操作规范手册
- 2025年北师大新版数学三年级上册第二单元《测量(二)》教案
- 留置尿管患者居家护理健康宣教
- 房屋租赁法律培训课件
评论
0/150
提交评论