2. 教学设计


第14加倍偷懒的诀窍

点击此处下载教学设计

1.教学内容分析

本节内容首先情境带入,引出for循环结构的知识内容;随后,以Python编程软件为辅助,讲解For循环嵌套及扩展for循环嵌套;之后,开展实践任务,以设计金字塔为例,熟悉for循环嵌套结构的使用方法;然后,思维拓展,讲解结构化程序设计等知识,最后,能力提升,通过Python编程设计解答百钱买百鸡问题。


2.学习者分析

1.学生具有一定的Python编程语言基础;

2.学生对for循环结构有一定的基础认识;

3.学生具备一定的逻辑推理能力,知识迁移能力,对人工智能的技术有较强的学习兴趣。


3.学习目标确定

1.知识与技能:

①掌握 for 循环的嵌套结构,理解双重嵌套循环的运行流程。;

②了解扩展 for 循环的嵌套结构,理解双重嵌套循环的运行流程;

③学生能够了解结构化程序的设计原理。

2.过程与方法:

①通过学习for循环嵌套结构,体会Python编程的双重循环结构的应用;

②通过项目的编程练习,培养学生设计能力和举一反三的能力。

3.情感态度与价值观:

①养成自主学习、自主探究的能力;

②培养发现问题、解决问题的探究能力;

③通过对项目的讨论、分析、制作等活动,培养严密的逻辑思维能力。 


4.教学重点难点

教学重点:1.理解双重嵌套循环的运行流程;

          2.掌握扩展for循环嵌套的编程设计;

教学难点:1. 应用 for 循环嵌套解决实际编程问题;

          2.灵活运用软件完成项目的制作。


5.教学流程图
14-1
14-2


6.教学活动

环节一:(情境导入)5min

教学活动1

1.教师讲授情境故事,设置悬念,吸引学生兴趣;(教师播放PPT)

教师:“又要秋游了!班委会拿出500元活动经费交给小楷等班干部,让他们为全体同学采购一批零食。小楷做了调查,同学们最喜欢饮料、巧克力和糖果。小楷提前去超市了解价格,发现饮料是5元一瓶,巧克力8元一块,糖果是12元一包。那么,饮料、巧克力和糖果各买多少,正好能把500元用完呢?同学们一时犯了难。小楷想起了古代有个“百钱买百鸡”的经典问题,利用计算机可以很快得出答案。小楷也准备编写个小程序,计算一下如何购买这批零食。同学们,你们想一想,应该怎样买呢?”

学生聆听情境故事,积极回应老师,思考如何购买零食;

教师:“好的,同学们,我们一起去学习一下利用Python编程想一想怎么买吧!今天我们的学习将分成三个模块,第一个模块,认识for嵌套结构;第二个模块,一起完成设计金字塔的实践任务;第三个模块,思维拓展,学习结构化程序设计等知识。”

学生聆听教师讲授。

活动意图说明:

通过情境故事吸引学生的注意力,激发学生的学习兴趣,导入本节课的内容----加倍偷懒的诀窍

环节二:(原理讲解)20min

教学活动2

1.教师讲解for 循环嵌套知识内容,并进行操作演示;

教师:“for循环嵌套的基本语法:Python语言允许在一个循环体里面嵌入另一个循环。Python 中for 循环嵌套的语法格式是如图:在后续的学习中,还会接触到更复杂的循环嵌套形式。你可以在循环体内嵌入其他类型的循环体,如在while循环中可以嵌入for循环, 反之,也可以在for循环中嵌入while循环。接下来做一个编程练习,利用for 循环嵌套输出乘法表。利用双重for循环结构,我们可以设计九九乘法表,并输出成我们常用的形式,方便平时的数学学习。编程思路如下: 1.第一层循环,用变量i遍历1到9,作为乘法表的第一个因数 2.第二层循环,用变量j遍历1到i,作为乘法表的第二个因数; 3.设置输出格式: print('%d*%d=%d '%(i,j,j*i),end=''),打印出每一个乘法算式;4.打印一个空语句作换行,当作每一行算式的结束。编程代码及结果如图。”

学生聆听教师讲解for 循环嵌套知识内容,教师播放PPT,进行相关演示

2.教师讲解扩展 for 循环嵌套知识内容,并进行相关演示;

教师:“扩展for循环嵌套基本语法:Python的for循环嵌套结构中,每一级的for循环还可以使用扩展的for循环结构,即for...else结构。比如, for循环嵌套可以说如下的语法格式,如图:在这种for … else结构中, for中语句块的执行逻辑没有什么特别,与普通的for语句没有区别, else中的语句块会在该循环正常执行完后执行。通过下面的练习体会这种扩展for循环结构的用法。下面做一个编程练习:利用for 循环嵌套进行因数分解。对于一个数字,如果是质数,则直接输出到屏幕。如果是合数,则表示成2个因数的乘积。参考程序及结果如图:然后,做一个找出不重复的数字的编程练习,用1、2、3、4这几个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?请列出来。参考程序及结果如图:

学生聆听教师讲解扩展 for 循环嵌套知识内容,教师播放PPT,进行相关操作演示;

活动意图说明

配合PPT和Python编程语言进行讲解,让学生从亲身经验中体会双重循环嵌套结构及使用方法。

环节三:(项目制作)25min

教学活动3

教师带领学生借助软件完成大楼建造及金字塔设计的编程设计;

教师:“首先,利用双重循环,画一幅多层大楼的示意图。要求能体现楼层基于每层楼的房间布局。参考代码及结果如图。然后,根据任务设计金字塔,任务描述如下,使用星号和空格,打印出五层金字塔。使用两次for循环嵌套,分别在每层连续打印出空格和星号。空格和星号的数学表达式为:空格数=max_level-current_level; *号数=2*current_level-1,程序及结果如图。”

教师操作Python编程语言,并讲解根据具体操作步骤完成大楼建造及金字塔设计的编程设计,并进行操作演示;

学生聆听教师讲解利用Python完成完成大楼建造及金字塔设计的编程设计的过程和方法;

教师讲解完成后,教师可留给学生5min时间让学生自己操作学习;

活动意图说明

屏幕共享,教师演示操作,培养学生动手操作能力,让学生直观学习编程设计过程,掌握逻辑结构。

环节四:(思维拓展)10min

教学活动4

教师讲解结构化程序设计设计案例的相关内容;

教师:“任何复杂的算法,都可以由顺序结构、选择(分支)结构和循环结构这三种基本结构组成,因此,构造一个算法的时候,也仅以这三种基本结构作为“建筑单元”,遵守三种基本结构的规范,基本结构之间可以并列、可以相互包含,但不允许交叉,不允许从一个结构直接转到另一个结构的内部去。因为整个算法都是由三种基本结构组成的,就像用模块构建的一样,所以结构清晰,易于验证正确性,易于纠错,这种方法就是结构化方法。遵循这种方法的程序设计,就是结构化程序设计齐赋值语句而使用额外的空格。并将每个要求的规范写法和不规范写法进行演示。程序流程图由处理框、判断框、起止框、连接点、流程线、注释框等构成。接下来,做一个设计案例,计算长方形面积的问题,可分为以下几个步骤:(1)设置num1和num2两个变量,接收用户输入的长度和宽度,并存储到num1和num2两个变量;(2)判断num1和num2是否大于0,如果大于0,继续下一个步骤,否则提示用户长度和宽度输入错误,算法结束;(3)计算num1和num2的乘积,并将乘积结果存储到result变量;(4)显示result变量的值到屏幕。其计算流程图如图所示:

学生认真聆听教师讲解结构化程序设计设计案例的相关内容;

活动意图说明

增强学生对结构化程序设计的认识,更好利用Python语言进行编程设计。

环节五:(展示小结)5min

教学活动5

1.学生发言,展示作品,进行逻辑代码讲解

2.教师对学生作品进行评价;

教师:“同学们,在看了大家的作品后,老师觉得大家都完成的非常好,老师给同学们一个大大的赞。”

1. 总结本节课的知识内容,巩固本节课的知识点,铺垫下一节课。

教学活动6

1.教师讲解百钱买百鸡问题;

教师:““百钱买百鸡”是一个经典的数学问题,出自中国古代的《张丘建算经》全书的最后一题。原题大致意思如下:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱。用100文钱买一百只鸡,其中公鸡、母鸡、小鸡都必须要有,问要买公鸡、母鸡、小鸡多少只能刚好凑足100文钱。“百钱买百鸡”的问题算是一个非常经典的三元一次方程的问题,可以利用计算机来搜索多组解。

学生聆听教师讲解百钱买百鸡问题;

2.根据所学知识,利用Python编程设计解决百钱买百鸡问题;

教师:“请参考以上计算方法,请Python的for…in循环嵌套结构进行编程实现百钱买百鸡的方法。

活动意图说明

通过项目式学习的体验效果,让学生可以更直接的体验Python编程的应用,提高学生的参与感。


7.板书设计

加倍偷懒的诀窍

 

1.for循环:

for循环嵌套:基本语法、九九乘法表编程 

扩展for循环嵌套:基本语法、因数分解、找出不重复数字  

2.金字塔设计:多层大楼、设计金字塔