高中信息技术必修1算法及其描述课时教案_第1页
高中信息技术必修1算法及其描述课时教案_第2页
高中信息技术必修1算法及其描述课时教案_第3页
高中信息技术必修1算法及其描述课时教案_第4页
高中信息技术必修1算法及其描述课时教案_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高中信息技术必修1算法及其描述课时教案一、教学背景与设计指向本课选自粤教版(2019)高中信息技术必修1第三章第二节,内容为“算法及其描述”。学生在前面章节中已经掌握了数据编码、数据与信息的关系等基础内容,具备了一定的信息意识与计算思维雏形。本课是学生从“使用信息技术”转向“理解信息技术内在逻辑”的关键节点,也是后续学习程序设计、数据处理和人工智能内容的重要基石。从课标层面看,《普通高中信息技术课程标准(2017年版2020年修订)》将“算法与程序实现”列为必修模块的核心内容之一,要求学生能够从生活实例出发,理解算法的基本概念与特征,掌握用自然语言、流程图和伪代码三种方式描述算法的基本方法,并能对简单问题进行算法分析与比较。本课教学需要解决的问题是:如何让高一学生理解算法并非程序员的专属工具,而是解决日常问题的一种思维方法;如何在三种描述方式之间建立转换与比较的意识;如何激活学生已有的生活经验,使其在真实情境中感受算法的价值。二、学情分析高一学生在此之前普遍缺乏系统的算法训练,对算法的认识多停留在“算法就是程序”“算法就是公式”的模糊层面。由于中考不涉及算法内容,学生在这方面的认知起点较低。多数学生在初中阶段接触过Scratch等图形化编程工具,能够完成拖拽积木的简单操作,但对算法背后的逻辑结构缺乏归纳能力。同时,高一学生正处于形式运算思维快速发展的阶段,具备一定的抽象思维基础,能够从具体操作中提炼一般规律。但是,不同学生的数学基础差异较大,部分学生在理解“变量”“循环”“分支”等概念时存在困难,教师需要将抽象概念嵌入具体场景,以体验式、探究式学习降低认知负荷。此外,学生对“算法的效率”缺乏直觉判断,容易将“能用”等同于“好用”,需要在本课中渗透算法效率的初步比较意识。三、教学目标第一,信息意识层面。学生能够从日常学习和生活场景中识别算法存在的普遍性,意识到同一问题可以通过不同算法解决,并能针对实际情境选择合适的算法描述方式。第二,计算思维层面。学生能够用自然语言、流程图和伪代码描述简单算法,能够分析算法的输入、输出、有限性、确定性与可行性,并能对两个简单算法的步骤数进行初步比较。第三,数字化学习与创新层面。学生能够利用在线流程图工具或纸笔绘制流程图,并能在小组合作中将实际问题转化为算法步骤。第四,信息社会责任层面。学生在讨论算法与程序的关系时能够认识到算法作为人类思维外化的本质属性,理解算法设计需考虑公平性与合理性,不将算法神秘化。四、教学重点与难点教学重点有二。其一,算法的基本概念与五大特征,即输入、输出、确定性、有限性和可行性,其中“确定性”与“有限性”是学生最容易混淆的两个特征,需要通过反例辨析加以厘清。其二,三种算法描述方式的规范表达,尤其是流程图中各图形符号的准确使用,以及从自然语言到流程图再到伪代码的转换能力。教学难点有二。其一,学生从“步骤叙述”上升到“算法抽象”,即理解算法不只是列举操作顺序,还需要考虑所有可能的分支路径与循环条件。其二,伪代码的书写规范,由于伪代码介于自然语言和程序语言之间,学生往往不知道写到什么粒度为止,需要教师提供学生熟悉的范例,如“若……则……否则……”句式与赋值符号的规范使用。五、教学方法与教学媒体本课综合运用问题驱动法、任务驱动法、对比教学法和小组协作法。教学媒体方面,准备多媒体课件、纸质学案(含流程图符号说明表与三个任务卡)、白板及磁贴(用于演示流程图的拼接)、在线流程图绘制工具(如Draw.io,使用演示模式)。考虑到部分学校机房设备条件存在差异,本课可以不依赖编程环境,全程使用纸笔与白板完成,也可根据实际情况灵活切换。整个教学过程设计为两课时连排,每课时40分钟,两课时之间休息10分钟。第一课时解决“算法是什么”和“自然语言与流程图描述”,第二课时解决“伪代码描述”与“三种方式比较”。六、教学过程第一课时(一)情境导入:烧水沏茶的算法启示(约8分钟)上课伊始,教师在屏幕上出示一幅生活情境图片:一位学生在清晨准备上学,需要完成穿衣、洗漱、烧水、泡面、吃早餐、整理书包六件事情。教师提问:“如果让你给这位同学安排做事的顺序,你会怎么安排?请把步骤写下来。”学生独立书写两分钟后,教师在白板上请三位学生将各自步骤贴出来,并请全班比较。学生很快会发现,有人先烧水再洗漱,有人先洗漱再烧水,还有人先烧水再去整理书包,但最终都完成了任务。教师顺势追问:“这些步骤有什么共同特点?”学生回答“一步步做”“有先后顺序”。教师继续追问:“有没有可能把‘烧水’放在‘泡面’之后?如果这样安排,会发生什么?”学生笑答“泡面没水”。教师由此引出本课主题:像这样为解决某一问题而采取的一系列有限步骤,就是算法。算法的价值在于用最合理的步骤达成目标,而不是盲目地罗列操作。随后,教师请学生在学案上完成“烧水沏茶”步骤图,要求画成箭头连接的形式,并引导学生初步感受流程图的形态。这一环节的设计意图在于,让学生从最熟悉的日常经验出发,主动构造“步骤序列”,完成从“做事”到“算法”的第一次认知跃迁。教师在此不急于给出算法定义,而是让学生充分暴露前概念,为后续概念建构提供对照。(二)概念建构:算法的定义与五大特征(约15分钟)教师给出算法的规范定义:算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。紧接着,教师不直接罗列五大特征,而是通过两组反例引导学生自己“发现”特征。第一组反例是“计算全班平均分”的步骤描述。教师出示学生写的一段自然语言描述:“第一步,输入所有同学的成绩;第二步,把成绩加起来;第三步,除以人数;第四步,输出结果。老师,这个步骤有什么问题?”学生很快指出“没说人数是多少”“如果没有人怎么办”。教师追问:“你们在指出什么问题?”学生回答“不够清楚”“缺少检查”。教师顺势将学生的意见归纳为“确定性”和“可行性”:算法中每一步都必须是明确的、无歧义的,且每一步操作必须能够实际执行。第二组反例是“猜数字游戏”的策略描述。教师请学生描述“猜一个1到100之间的数”的方法。有学生说“随便猜,猜不对再猜”。教师问:“这样能保证结束吗?”学生摇头。教师继续问:“那如果一直猜不中怎么办?”学生意识到可能出现无限循环,由此引出“有限性”。教师补充:“算法必须在执行有限步之后结束,不能无限进行下去。”接着,教师请学生自行评估烧水沏茶算法,判断该算法是否具备输入和输出。学生讨论后认为,该算法没有数值输入,但有“泡好的面”作为输出。教师进一步说明:“输出不一定是数据,也可以是完成某种状态。输入可以是零个或多个,但输出至少一个。”这一辨析帮助学生破除“算法必须有数据输入”的思维定式。最后,教师请学生在学案上完成一个匹配练习:将五大特征与对应的反例或正例连线,并独立举出一个自己生活中的算法实例,标明其特征。学生完成后,同桌互查,教师巡堂抽取两份典型实例进行全班点评。例如有学生举出“早上起床——洗漱——吃饭——上学”,教师引导全班判断其是否满足“确定性”,学生普遍认为“洗漱”本身有歧义(刷牙还是洗脸),于是修正为“刷牙洗脸”或“刷牙并洗脸”,从而加深对确定性的理解。(三)任务驱动:用自然语言描述“韩信点兵”问题(约12分钟)教师呈现经典问题:“韩信点兵,三人一列余一人,五人一列余二人,七人一列余三人。问最少有多少士兵?”教师首先向学生解释题意,并请学生尝试用自然语言描述求解步骤。学生独立尝试三分钟后,教师请一位学生口述,教师在白板上记录:第一步,从1开始取一个自然数n;第二步,检查n除以3的余数是否为1,如果不是,将n增加1,再检查;第三步,检查n除以5的余数是否为2,如果不是,回到第二步重新取下一个数;第四步,检查n除以7的余数是否为3,如果不是,回到第二步重新取下一个数;第五步,如果三步检查全部通过,输出n,停止。教师请全班审视这段描述,提问:“这段描述满足算法的特征吗?”学生逐条核对后认为满足有限性、确定性、可行性,有输出。教师追问:“有没有更聪明的办法?比如每次不是加1,而是找到满足第一个条件的数后,每次加3?”学生经过思考后,有学生提出“满足三人一列余一人的数有1、4、7、10……每次加3即可”,教师表扬其优化思路,并将两种自然语言描述并列展示,引导学生初步体会算法效率差异。这一环节的核心意图在于,让学生体会用自然语言描述算法虽然通俗易懂,但语句冗长,极易产生歧义,尤其在出现“回到第二步”这类跳转指令时表达不够直观。教师借此过渡到流程图描述方法。(四)流程图的符号与规范(约20分钟)教师分发学案上的“流程图常用符号说明表”,表中包含起止框(圆角矩形)、输入输出框(平行四边形)、处理框(矩形)、判断框(菱形)、流程线(箭头)五种基本图形,以及各自的名称、功能、注意事项。教师强调:起止框只能有一个入口和一个出口;判断框必须有两条出口,出口处须标注“是”或“否”(也可标注“Y”和“N”);所有框内文字必须简明,不出现完整句子;流程线不允许交叉,如需交叉应使用连接符。教师用白板磁贴演示“判断一个数是否为偶数”的流程图拼接过程。教师先贴出起止框,再问学生下一步应该放什么框。学生回答“输入框”,教师贴上平行四边形并标注“输入n”。教师再问“接下来呢”,学生回答“处理框”或“判断框”,教师引导学生思考“计算n除以2的余数”是一个处理步骤,因此先放矩形处理框“r=nmod2”,再放菱形判断框“r=0?”,然后分两支分别输出“偶数”和“奇数”,最后汇聚到终止框。完成拼接后,教师故意将一条流程线画反向,提问“这样行不行”,学生观察后指出方向错误,教师强调流程线方向必须自上而下或从左到右,箭头不可省略,但如果是自上而下的直接连接,箭头可以省略(教材中通常都画出)。随后,学生两人一组在学案上完成“韩信点兵”算法的流程图绘制。教师在巡视中发现,多数学生能正确使用起止框和输入输出框,但容易在判断框出口处漏标“是/否”,或者循环回到判断框时方向画错。教师选取两份典型作品投影展示,一份规范,一份有共性问题,请全班共同诊断并修正。此环节时间较长,但属于本课核心技能训练,教师需密切关注学生操作细节,及时纠偏。第一课时结束时,教师布置一个思考题作为课后任务:“韩信点兵”算法如果用一种更接近程序语言的写法,应该怎么写?请尝试把流程图中每一步改写成一行简短的文字。这个任务不需要上机,只需要写在学案上,为第二课时的伪代码教学做铺垫。第二课时(五)复习引入:从流程图到伪代码的桥梁(约8分钟)上课开始,教师请三位学生将自己课后写的“韩信点兵”算法简写文字投影到白板上。一位学生写的是:“n=1;如果n除3余数不为1,则n加1;再做同样的检查……”另一位学生写的是:“从1开始循环,当n满足三个条件时停止,输出n……”还有一位学生没有写出。教师请全班对这三种写法进行点评,学生普遍认为第一种太啰嗦,第二种不清楚“停止”如何实现,第三种没有完成。教师顺势指出:“自然语言太啰嗦,流程图太占空间,程序语言又太严格。我们需要一种介于两者之间的描述形式,这就是伪代码。”伪代码不要求严格遵循某种编程语言的语法,但要求结构清晰、逻辑完整、人们看了能够直接转换成程序。教师在白板上写出教科书中的伪代码示例:输入nr←nmod2若r=0输出“偶数”否则输出“奇数”结束教师请学生将这段伪代码与上一课时绘制的“判断偶数”流程图对照,指出一一对应的关系。教师强调两点:赋值符号使用“←”而不是等号,以区分于数学中的相等判断;条件语句使用“若……则……否则……”或“如果……那么……否则……”的固定句式,缩进可表示嵌套层次,但不强制要求。随后,教师请学生尝试将“韩信点兵”算法从流程图改写为伪代码。(六)分层任务:完成“韩信点兵”伪代码并优化(约16分钟)学生在学案上独立完成伪代码的编写。教师提供支架式示例,给出开头和结尾:n←1循环如果nmod3=1且nmod5=2且nmod7=3输出n退出循环否则n←n+1结束教师请学生对照流程图中“回到第二步”的跳转逻辑,指出上述伪代码中“循环”“退出循环”与流程图的对应关系。随后教师提出一个追问:“这个算法一定会在有限步内结束吗?请说明理由。”学生经过讨论,能够依据中国剩余定理或直观观察(1到105范围内必有解)给出肯定回答,但教师不必在此展开数论证明,只需让学生意识到算法的有限性可以通过数学推理加以保证。接下来,教师出示一个分层挑战任务。基础层:将上述“每次加1”的伪代码改写为“每次加3”的版本,并用自己的语言说明为什么能加快速度。提高层:尝试将“检查余数”的三行条件合并为一行条件(使用“且”连接),并比较两种写法的可读性。拓展层(选做):如果士兵人数不是“最少”而是“在1000以内有多少个解”,算法应该如何改动?请写出伪代码或步骤说明。学生按能力选择任务,完成之后小组内交换检查。教师在巡堂中选择一位基础层学生的作品和一位拓展层学生的作品进行投影对比。基础层学生的作品为:n←1循环如果nmod3=1且nmod5=2且nmod7=3输出n退出循环否则n←n+3结束教师引导全班计算“每次加3”是否漏掉可行解。学生通过讨论发现,因为第一个条件要求nmod3=1,所以满足该条件的数相差3,因此每次加3不会漏解,但该算法无法保证找到的是“最小解”,还需要从1开始检查。这一讨论让学生体会到算法正确性需要论证,不能靠感觉。拓展层学生作品为:n←1count←0循环n≤1000如果nmod3=1且nmod5=2且nmod7=3输出ncount←count+1n←n+3结束输出“共有”,count,“个解”教师请该生说明“count”变量的含义,并引导全班理解累加器的概念。这一对比让学生看到,伪代码虽然简单,但可以表达复杂的统计需求,同时也感受到变量命名与初始化的重要性。教师在此渗透程序设计中“变量初始化”的思想,但不展开。(七)三种描述方式的系统比较(约10分钟)教师出示一个比较表格,请学生独立填写后小组讨论:描述方式 直观性 精确性 书写效率 适用场景自然语言 高 低 高 日常交流、问题初步分析流程图 中 中 中 逻辑展示、算法教学、复杂分支表达伪代码 低 高 高 程序设计前的算法设计教师在汇总学生填写结果后,向学生提问:“如果你要把一个算法交给一个完全不懂计算机的人去执行,你会选择哪种描述方式?如果你要把算法交给程序员去编码,你又会选择哪种?”学生回答“交给普通人用自然语言”“交给程序员用伪代码”,教师继续追问“那流程图什么时候最有用?”有学生回答“两种人交接的时候”,教师肯定并补充:“流程图在团队协作和算法文档中具有不可替代的沟通价值,尤其是当算法含有多层嵌套时,流程图的可视化优势突出。”教师随后请学生回顾“烧水沏茶”情境,用三种方式描述同一个算法。教师请三位学生分别用自然语言、流程图和伪代码在白板上呈现,全班对照比较。这一活动旨在让学生直观看到,一个简单问题用三种描述方式都能表达,但详略与风格完全不同,从而加深对三种方式各自优势的理解。(八)课堂总结与评价(约6分钟)教师请学生以“我今天学会了……”为句式,在学案上写下三条收获和一条疑问。教师巡堂抽取五份学案进行分享。常见的收获包括“算法不是神秘的东西”“流程图比自然语言清楚”“伪代码像半英文半中文”等,常见的疑问包括“不管用什么描述,最后是不是都要变成程序才能运行”“如果一个问题很复杂,流程图会不会画不下”。教师逐一回应,并指出:算法不依赖于程序存在,程序只是算法的一种最终表现载体;对于复杂算法,流程图可以使用子程序或模块化设计,后续章节将学习。最后,教师布置课后作业:(1)完成学案上的“判断闰年”算法,要求分别用自然语言、流程图和伪代码三种方式描述;(2)思考生活中一个需要“循环”才能解决的问题,并写出伪代码。两道题均为巩固性作业,不涉及编程实现。教师在收尾时再次强调,算法描述的三种方式不是孤立的技能,而是思考问题的三种视角,掌握它们的核心在于提高自己把复杂问题拆解为清晰步骤的能力。七、教学反思本课以生活情境为起点,以经典问题为载体,以三种描述方式的转换为暗线,力求让每一位学生都经

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论