小学《人工智能编程》课程教案
第9讲 真假难辨
1.教学内容分析
本节内容首先情境带入,引出基本运算符的知识内容;随后,以Python编程软件为辅助,讲解逻辑运算符、布尔运算及增量赋值运算符编程课的作用和意义;之后,开展实践任务,以选择工作为例,熟悉布尔运算的使用及编程方法;然后,思维拓展,讲解编译与解释等知识,最后,能力提升,通过Python编程计算韩信点兵的问题。
2.学习者分析
1.学生具有一定的Python编程语言基础;
2.学生对人机互动有一定的了解;
3.学生具备一定的逻辑推理能力,知识迁移能力,对人工智能的技术有较强的学习兴趣。
3.学习目标确定
1.知识与技能:
①了解基本的逻辑运算符,掌握逻辑运算方法;
②了解增量赋值运算符,学会各种增量赋值的编程方法;
③学生能够了解编译与解释等基本知识。
2.过程与方法:
①通过学习基本逻辑运算相关内容,体会Python编程的应用;
②通过项目的编程练习,培养学生设计能力和举一反三的能力。
3.情感态度与价值观:
①养成自主学习、自主探究的能力;
②培养发现问题、解决问题的探究能力;
③通过对项目的讨论、分析、制作等活动,培养严密的逻辑思维能力。
4.教学重点难点
教学重点:1.掌握基本逻辑运算方法;
2.掌握各种增量赋值的编程方法;
教学难点:1.利用逻辑、关系运算符进行布尔混合运算,掌握相关的编程方法;
2.灵活运用软件完成项目的制作。
5.教学流程图
情境导入
原理讲解
项目制作
思维拓展
展示小结
能力提升
6.教学活动
环节一:(情境导入)5min |
教学活动1 1.教师讲授情境故事,设置悬念,吸引学生兴趣;(教师播放PPT) 教师:“随着人工智能技术的发展,机器人的研究有了显著进展。其中,人机对话方面的进步尤为突出。人机对话范围包括语音交互对话和文本输入对话两个方面。不管采用哪种信息输入技术,自然语言理解都会起到重要作用。早期的人机对话,人机交流使用的是经过预先定义并有数量限制,由字符集组成的命令式语言。现在的人机对话交流可以初步使用人们习惯的自然交流语言,交流方式也是人们习惯的自然语言交流方式,包括智能语伴、语音和手写等,甚至包括人的表情、手势、步态等。同学们,你们对现在更加先进的人机互动有多少认识呢?” 学生聆听情境故事,积极回应老师,想像先进的人机互动情境; 教师:“好的,同学们,我们一起去了解一下先进的人机互动场景!今天我们的学习将分成三个模块,第一个模块,认识基本运算符及布尔运算;第二个模块,一起完成工作的选择的实践任务;第三个模块,思维拓展,学习编译与解释等知识。” 学生聆听教师讲授。 |
活动意图说明: 通过情境故事吸引学生的注意力,激发学生的学习兴趣,导入本节课的内容----真假难辨 |
环节二:(原理讲解)20min |
教学活动2 1.教师讲解Python逻辑运算符的知识内容,并进行相关演示; 教师:“Python语言支持逻辑运算。用于逻辑运算的运算符称为逻辑运算符,又称布尔运算符。通过逻辑运算符对一个或多个数值、变量、表达式进行逻辑运算,得到True或False的结果。Python提供了and、 or、 not等逻辑运算符,如表所示。接下来做一个编程练习:编写一段Python程序,使用和验证表中所列的3种逻辑运算符。编程中会使用到if选择结构,可以在IDLE交互式编程环境下通过help()进入help状态,查询if结构的使用方法。例程如下:在IDLE编辑器中录入以上程序,并运行程序,输出以下结果,如图:然后,做一个编程练习:练习1:打印逻辑取反运算的布尔值,程序及结果如图;” 学生聆听教师讲解Python逻辑运算符的知识内容,教师演示PPT,并进行相关演示; 2.教师讲解布尔运算的知识内容,并进行相关演示; 教师:“高级语言中,布尔数据类型的值是True(真)或False(假),它们在存储中的值分别表示为1或0。 Python中,布尔运算的结果同样就两个值:一个是True,另一个是False。布尔运算主要用来进行逻辑判断,常用的6种比较运算符都可以应用在布尔逻辑表达式中,通过运算后最终得到布尔值。例如:在IDLE的交互式环境中逐一执行以上语句,会显示布尔运算的结果。上述案例中,a < b 成立,故布尔运算“a < b”的结果为True。上表所示的and、 or、 not等逻辑运算符也常常应用在布尔逻辑表达式中,通过运算后最终得到布尔值。例如:在IDLE的交互式环境中逐一执行以上语句,会输出布尔运算的结果。布尔表达式5<3 and 5==5是不成立的,所以输出的是False,而布尔表达式not5<3成立的,所以输出的是True。接下来做一个编程练习:练习2:观察布尔运算的值,程序及结果如图;” 学生聆听教师讲解布尔运算的知识内容,教师播放PPT,进行相关操作演示; 3. 教师讲解增量赋值运算符知识内容,并进行操作演示; 教师:“前面介绍过,Python的赋值运算符用于为变量赋值。例如a=8,是最基本的赋值运算,它将表达式右侧的值8分配给左侧的变量a。Python中还有一批运算符可以执行复杂一些的赋值运算。例如a +=8,它的处理过程是先将变量a的当前值与8相加,再将最终结果分配给变量a,等价于:a=a+8。这些运算符实际上是算术运算符与基本赋值运算符的复合,有组合作用,被称为增量赋值运算符。在Python中,具有增量赋值作用的运算符还不少,具体见表所示。下面,编写一段Python程序,使用和验证表9-2中所列的增量赋值运算符,观察运算输出的结果。例程如下:以上实例输出结果如图:接下来,做一个编程练习,练习3:打印布尔值,程序及运行结果如图。” 学生聆听教师讲解增量赋值运算符知识内容,教师播放PPT,进行相关操作演示; |
活动意图说明 配合PPT和Python编程语言进行讲解,让学生从亲身经验中体会逻辑运算符、布尔运算和增量赋值运算符等知识。 |
环节三:(项目制作)25min |
教学活动3 教师带领学生借助软件完成工作的选择的编程设计; 教师:“任务描述:如果你在一个工厂工作,面临不同的主人以及工作环境,有三个环境:当主人是人,工作环境对人无害,对机器人有害;当主人是人,工作环境对人和机器人都有害;当主人是AI,并且工作环境对机器人有害。有三个选择:(1)老老实实干活儿;(2)奋勇救人;(3)一溜烟逃跑。做出选择之后,打印出对结果的评价;参考代码及结果如图。” 教师操作Python编程语言,并讲解根据具体操作步骤完成工作的选择的编程设计,并进行操作演示; 学生聆听教师讲解利用Python完成工作的选择的编程设计的过程和方法; 教师讲解完成后,教师可留给学生5min时间让学生自己操作学习; |
活动意图说明 屏幕共享,教师演示操作,培养学生动手操作能力,让学生直观学习编程设计过程,掌握逻辑结构。 |
环节四:(思维拓展)10min |
教学活动4 1.教师讲解PEP8 编码规范的相关内容; 教师:“PEP是Python Enhancement Proposal 的缩写,是关于Python的增强建议书。 PEP8规范的主题是“Style Guide for Python Code”,它是一个编程规范,整理了很多使程序更具可读性的建议。PEP8的原文在Python上,作者是Guido、 Barry和Nick。 PEP8改编自Python创始人Guido先生所写的《 Python Style Guide》一文,同时添加了一些来自Barry等人关于编程风格的总结。 Guido的重要见解是认为,代码被读者阅读的次数更多,从这个意义上来说,代码的可读性比编程过程更重要。因此, PEP8规范里提供的指导原则主要用于提升代码的可读性。PEP8首次发布时间是2001年,整份规范分10个部分,主要包括代码布局、语句中空格的使用、注释、命名规范和编程建议等。” 学生认真聆听教师讲解PEP8 编码规范的相关内容; 2.教师讲解编译及解释相关内容; 教师:“编译型语言在执行之前,先会通过编译器对程序执行一个编译的过程,把程序转变成机器语言,运行时就不需要翻译,而直接执行就可以了,最典型的例子就是C语言。解释型语言就没有这个编译的过程,而是在程序运行的时候,通过解释器对程序逐行做出解释,然后直接运行,最典型的就是Ruby、 Python。 Python语言的解释器工作原理如图所示。” 学生认真聆听教师讲解编译与解释相关内容; |
活动意图说明 增强学生对编译与解释的认识,更好利用Python语言进行编程设计。 |
环节五:(展示小结)5min |
教学活动5 1.学生发言,展示作品,进行逻辑代码讲解; 2.教师对学生作品进行评价; 教师:“同学们,在看了大家的作品后,老师觉得大家都完成的非常好,老师给同学们一个大大的赞。” 总结本节课的知识内容,巩固本节课的知识点,铺垫下一节课。 |
环节六:(能力提升)5min |
教学活动6 1.教师讲解韩信点兵问题; 教师;“韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他每次点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数。有一次战斗前,韩信要清点士兵的人数。让士兵三人一组,就有两人无法编组;五人一组,就有三人无法编组;七人一组,就有两人无法编组。那么这些士兵一共有多少人呢?” 学生聆听教师讲解韩信点兵问题; 2.根据所学知识,利用Python编程讲解韩信点兵问题; 教师:“请编写Python程序计算韩信至少有多少兵。” |
活动意图说明 通过项目式学习的体验效果,让学生可以更直接的体验Python编程的应用,提高学生的参与感。 |
7.板书设计
真假难辨
1.基本运算符:
逻辑运算符:
布尔运算:
增量赋值运算符:
2.工作的选择:
8.作业与拓展学习设计
请编写Python程序计算韩信至少有多少兵
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论