粤教版高中信息技术(选修1·算法与程序设计)For循环语句教学设计_第1页
粤教版高中信息技术(选修1·算法与程序设计)For循环语句教学设计_第2页
粤教版高中信息技术(选修1·算法与程序设计)For循环语句教学设计_第3页
粤教版高中信息技术(选修1·算法与程序设计)For循环语句教学设计_第4页
粤教版高中信息技术(选修1·算法与程序设计)For循环语句教学设计_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

粤教版高中信息技术(选修1·算法与程序设计)For循环语句教学设计一、教学基本信息本教学设计适用于高中信息技术选修1《算法与程序设计》第二章第四节第一课时,教学内容为For循环语句。课时安排为两课时连排,共九十分钟。授课对象为高中二年级学生,学生此前已完成顺序结构与分支结构的学习,掌握了赋值语句、输入输出语句与If条件语句的基本用法,能够编写简单的单分支与双分支程序,具备了进入循环结构学习的知识基础。本课所使用的编程环境为Python3.x解释器,机房内每位学生配备一台安装有编辑器的计算机。教材采用广东教育出版社出版的高中信息技术选修1第2.4节内容,教学设计在忠于教材的基础上进行情境重构与活动再造。二、教学设计理念本课以计算思维培养为核心线索,遵循"问题驱动—抽象建模—代码实现—迁移拓展"的认知路径。循环结构是程序设计三大基本结构中最能体现计算机"不知疲倦、严格重复"特性的结构,教学的关键不在于让学生背下for语句的格式,而在于让学生理解"重复中可以控制、控制中蕴含规律"这一算法本质。教学中避免两个常见误区:一是把for语句当成语法条目灌输,导致学生只会模仿不会设计;二是例题为求新奇而脱离学生经验,导致理解门槛被人为抬高。本课所有情境均取自学生熟悉的校园生活与数学学习,确保认知负担落在循环思想本身而非背景知识上。三、课程标准与教材分析《普通高中信息技术课程标准(2017年版2020年修订)》在模块1"数据与计算"与选择性必修模块中明确要求学生掌握一种程序设计语言的基本使用方法,理解循环结构的执行流程,能够运用循环结构解决实际问题,并在问题解决过程中发展计算思维。For循环作为计数型循环的典型代表,是落实该要求的核心载体。教材2.4.1节先以"累加求和"问题引出循环的必要性,再给出for语句的一般格式,随后通过range函数说明循环次数的控制方式,最后以典型例题展示应用。教材的编排逻辑清晰,但例题之间跨度较大,从求和直接跳到图形打印,中间缺少"循环变量每次如何变化"的显微级剖析。本设计在此处增设"逐轮追踪"环节,用表格化手段将循环执行过程可视化,弥补这一断层。四、学情分析高二学生在数学必修课程中已学习等差数列求和,对1+2+3+…+100这类问题不陌生,这为理解累加器模型提供了坚实的数学锚点。但学生普遍存在的困难有三:其一,难以理解"同一个语句被执行多次,每次变量的值却在变化",习惯数学中"一个符号对应一个值"的思维定式;其二,容易混淆range(a,b)中终点不包含b的规则,产生边界错误;其三,在需要自定义循环次数的实际问题中,往往说不清"到底循环几次、每次循环体该做什么"。针对以上学情,本课将"循环变量追踪表"贯穿始终,让学生在编码之前先用手算的方式经历循环的全过程,再把纸上过程翻译为代码,实现从具体到抽象的自然过渡。五、教学目标知识与理解层面:学生能够准确说出for循环语句的语法格式,解释range函数的三种参数形式及其生成的整数序列,理解循环变量在每一轮迭代中的更新机制,能够区分for循环适用于"次数确定"的场景,与while循环的适用场景形成初步对比。技能与操作层面:学生能够独立编写累加、计数、遍历三类典型for循环程序,能通过添加临时输出语句的方式调试循环程序,能够对给定程序进行逐轮手算推演并预测输出结果。思维与素养层面:学生经历"识别重复模式—抽象循环三要素(初始、条件、累进)—代码实现"的完整建模过程,体会算法自动化对解决大规模重复性问题的价值,初步形成"让计算机做重复的事,让人做设计的事"的计算思维意识。六、教学重点与难点教学重点:for循环语句的语法结构;range函数的使用;累加器模型的构建与运用。教学难点:循环三要素与实际问题的对应关系,即面对一个新问题时,如何确定循环从哪儿开始、到哪儿结束、每一轮做什么;range函数"左闭右开"区间的准确掌握。难点突破策略:以追踪表为核心脚手架,先人工推演再写代码;通过修改起点、终点、步长三个参数的对比实验,让学生亲身观察序列变化,在操控中内化边界规则。七、教学准备教师准备:机房环境测试,确保Python环境可用;准备"循环追踪表"学习单,人手一份,表格包含轮次、循环变量当前值、累加器当前值、本轮执行的循环体含义四列;准备层递式任务单,包含基础题、提升题、挑战题三组;准备课堂演示用的小程序若干。学生准备:完成课前导学任务——回顾If语句写法,手算1到10的累加和并记录计算步骤,思考"如果加到一万,手算要几步"。此一问题为本课的情境引线。八、教学过程(一)情境导入:手算的尽头(8分钟)教师在大屏幕呈现高斯的故事片段:小高斯用首尾配对法几秒钟算出1加到100。随即抛出本课主问题:如果不用巧算,让计算机老老实实一个数一个数地加,它要加多少次?如果加到一百万呢?学生快速报出答案:九十九次、九十九万九千九百九十九次。教师追问:让你写程序做这件事,你现在的知识能写吗?有学生回答可以用赋值语句一行一行加。教师在编辑器里现场敲下:s=0s=s+1s=s+2s=s+3敲到第四行停下,问学生:写到一百万,这样的代码要多少行?教室里立刻感受到这种方式的荒谬。教师顺势板书:三行代码里,什么东西没变,什么东西在变?学生观察后指出:s=s+这个骨架没变,加号后面的数每次多1。教师点拨:凡是"骨架不变、数据按规律变化"的重复工作,都可以交给循环结构。今天我们就学习Python中最常用的循环语句——for循环。此环节将新知锚定在学生的认知冲突之上,避免空泛的开场白。(二)新知建构一:for语句的长相与脾气(12分钟)教师在屏幕板书for语句的一般格式:for循环变量in序列:循环体并用自然语言注解:对序列中的每一个元素,依次把它交给循环变量,然后执行一次循环体;当序列中的元素取完,循环结束。随后展示最小可用实例:foriinrange(1,11):print(i)学生预测输出后运行验证,屏幕依次打印1到10。教师在此设置第一个认知陷阱:我把range(1,11)里的11改成10,会打印到几?有学生答10,有学生答9。运行结果揭示它只打印到9。由此引出本课第一个铁律:range(起点,终点)生成的整数序列包含起点、不包含终点,终点是"哨兵",站岗但不入列。教师通过三组参数对比实验让学生自主归纳range的三种形态。学生在机器上依次运行:foriinrange(5):print(i)此时输出0到4,归纳出单参数形式range(n)表示从0开始数n个数。再运行起点终点双参数形式,确认前述左闭右开规则。最后运行:foriinrange(2,21,3):print(i)得到序列2、5、8、11、14、17、20,归纳出第三参数是步长,即每次跨多大。教师补充提问:步长可以是负数吗?学生试验range(10,0,1),看到从10倒数到1,确认步长为负时实现倒序,此时区间规则变为"左开右闭的反向行走"——起点在、终点不在。此环节坚持"先预测、后运行、再归纳"的三步流程,每一次运行都由学生口头预测驱动,保证学生始终处于主动加工状态而非被动观看状态。(三)新知建构二:追踪表——让循环慢下来(15分钟)教师明确指出:会认语句不等于会想循环。写循环程序之前,先回答三个问题:从哪开始?到哪结束?每一轮做什么?这三个问题合称循环三要素。回到本课主问题,师生共同完成累加程序的设计。教师先发学习单,让学生在追踪表上以手算方式模拟如下代码:s=0foriinrange(1,11):s=s+i学生逐轮填写:第一轮,i为1,s从0变为1;第二轮,i为2,s从1变为3;第三轮,i为3,s从3变为6……直至第十轮,s为55。填表过程中教师巡视,重点观察学生在第几轮开始把规律内化、能否不依赖心算而看懂表格自身的递推结构。填表完成后,教师请一名学生口述全过程,另一名学生指出表格中每一列扮演的角色:i是计数者,负责走到终点就停;s是记账者,把每一轮的成果累计下来。教师固化术语:像s这样初值为零、每轮累加新值的变量,称为累加器;累加器必须在循环开始之前初始化,且初始化语句位置一旦放错——比如放进循环体内部——每一轮都会被清零。教师现场演示把s=0误放进循环体的错误代码,输出结果变成只保留最后一轮的10,学生直观看到初始化位置错误的后果,印象远深于口头强调。随后进行改写训练,两道小题限时五分钟:把1到10的和改为1到100的偶数和;改为1到100中3的倍数的个数统计。第一题考查步长参数的运用,改法是把range改为range(2,101,2);第二题考查"累加器不只是求和也可以是计数",代码演变为:count=0foriinrange(1,101):ifi%3==0:count=count+1教师强调第二题中for与if的嵌套关系:for负责把人带到每一扇门前,if负责判断这扇门要不要进。这个比喻帮助此前分支结构掌握不牢的学生完成两种结构的第一次协同。(四)巩固演练:分层任务场(25分钟)学生按座位自然分组,领取分层任务单。三个梯度的任务如下。基础层——必做,面向全体:任务一,输出九九乘法表中关于7的那一行,即7×1到7×9的算式。提示使用字符串拼接或fstring格式化输出。此题训练"固定因子、变化因子"的循环建模,循环变量充当变化的那一个数。任务二,某篮球特长生进行十轮投篮测试,每轮投篮二十次,命中数由键盘依次输入,使用循环输入并用累加器统计十轮总命中数与命中率。此题把input函数放进循环体,训练"循环内交互"的写法。提升层——选做,面向多数:任务三,找出100到999之间所有的"水仙花数",即各位数字立方和等于自身的三位数,如153=1³+5³+3³。此题需要先通过整除与取余运算分离百、十、个位,再在循环中完成判定与输出,综合性明显提升。挑战层——选做,面向学有余力者:任务四,百钱买百鸡问题:公鸡五钱一只、母鸡三钱一只、小鸡一钱三只,用一百钱买一百只鸡,问各买多少只。要求学生用for循环嵌套或单层循环加条件约束求解,并统计程序实际执行的轮数,体会有无用数学约束缩小循环范围对效率的影响。此阶段教师的角色从讲解者转为诊断者。巡视中按既定观察清单记录:学生能否正确写出range的三个参数;累加器初始化位置是否正确;缩进是否规范;遇到错误时是举手求助还是先自行读报错信息。对于普遍出现的缩进错误,教师集中到屏幕演示一次:循环体必须统一缩进,Python用缩进表达归属关系,缩进错一格,程序意思就变了,这既是语法规则,也是程序严谨性的体现。任务完成后,抽取三组学生上台展示。展示流程固定为三步:先讲循环三要素怎么定的,再讲追踪表上前两轮什么样,最后运行程序。这一展示规约确保展示者呈现的是思维过程而非仅是一个能跑的结果,也训练全班学生评审同伴算法的能力。(五)总结升华:循环的人生观(8分钟)师生共同完成课堂小结,教师以思维导图形式在黑板呈现for语句格式、range三种参数形态、累加器模型、循环三要素四个知识节点,并让学生补充各节点下的关键词。教师抛出对比问题作为下节伏笔:对方篮球运动员每轮投二十次共十轮,我们用for循环;但如果规则改为"一直投,直到投中一百次为止",此时循环次数事先未知,for循环还合适吗?学生讨论后发现:次数未知时需要另一种"看条件行事的循环",即下节课的while循环。教师明确两者的分工口诀:数得清次数用for,说不清次数看条件。最后教师作结:循环看似是机器的死板重复,实则凝聚着人的智慧——人负责把复杂的重复抽象成一条简洁的规律,机器负责不知疲倦地执行亿万次。学会写循环,本质上是学会一种分解与抽象世界的思维方式。(六)作业布置(2分钟)必做题:完善课堂任务单中未完成的题目并调试通过,将代码与运行截图提交至班级学习平台。选做题——生活观察类:寻找校园或家庭中一处"按规律重复"的现象,用自然语言描述它的循环三要素,下节课课前一分钟分享。此题意在让循环思想走出机房,观察诸如打卡、值日、签到等真实重复性事务,为算法意识的日常化埋种。九、板书设计主板书采用左右分区结构。左侧为知识结构区,自上而下书写:for语句格式、range三形态及对应示例、累加器三要点(初始化在外、累加在内、结果在后)。右侧为过程区,保留主问题的追踪表前四轮手算过程,作为整节课思维路径的物化留痕,直至下课不擦除。十、教学评价设计本课评价采用"过程加作品"双轨制。过程性评价依据教师巡视观察清单与追踪表完成质量,重点观察学生能否脱离样例自行确定循环三要素;作品评价依据任务单达成度,基础任务达成记合格,提升任务达成记良好,挑战任务达成且能阐述优化思路记优秀。课堂展示环节嵌入同伴互评,每位评审者用一句话指出展示者算法中的一个亮点或一个疑点,培养技术表达与批判性倾听能力。十一、教学反思预设本课设计的可能风险有

温馨提示

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

评论

0/150

提交评论