资源简介 《义卖竞价(一)——关系算法》教案一、教材分析主要学习Python的关系运算及选择结构,以竞价为切入点,理解在Python中如何比较数的大小并得出最大值或最小值。二、学情分析学生对关系运算在数学课上的应用比较熟悉,要着重讲解关系表达式是如何用于Python中比较大小的判断的。三、教学目标1.知识与技能:掌握Python关系运算的关系表达式和关系运算符;使用Python找出三个数中的最大值。2.过程与方法:采用案例教学法,用义卖竞价的场景使学生快速理解找出一组数中最大值的逻辑方法;启发式教学,引导学生用关系运算思维理解相关问题。3.情感态度与价值观:善于用计算思维解决问题,数字化描述生活中的各类事件、各种过程,提高分析问题、解决问题的自信心和条理性。四、教学重难点在Python中用关系表达式比较一组数的大小关系。五、教学方法案例法、启发法、讨论法。六、教学过程?导入新课师:同学们参加过义卖活动吗?哪位同学可以给我们分享你参加义卖的经历?生:举手回答。师:总结学生的回答。义卖常常以竞价的形式进行,即价高者得。今天我们来学习制作一个模拟义卖竞价的程序。【设计意图】引入案例,帮助学生理解学习任务,引导学生思考。?讲授新课一、三个数比较大小的算法描述及流程图师:我们编写的模拟义卖竞价程序,其核心是数值比较,并得出数值最大的一方。在用算法描述数值比较之前,我想问同学们一个问题:假设你面前有三个不知道重量的物品,用一个没有砝码的天平,怎么得出三个物品中哪个最重?生:小组讨论,举手发言。师:总结学生的发言。同学们都想到了,解决这个问题的办法,就是:①把三个物品编号为a,b,c;②将a,b分别放在天平两端,留下较重的一个;③将c放在天平另一端,留下较重的一个;④最后留下的就是最重的物品。因此,用算法描述数值比较,对应的也有这几个关键点:①设置变量,输入数据;②构建比较价格的表达式;③要储存在两两比较中较大的数,进入下一个比较价格的表达式;④输出数据。无论有多少数据要作比较,都需要先进行两两比较,并对其中较大的一个数进行存储处理,因为它还需要和下一个数进行比较,而不是直接输出。师:请同学们参照上述要求,试着用流程图描述三个数比较大小的算法。生:小组讨论,画出流程图。师:点评学生的流程图。老师设计了两种算法,画出了两个流程图,同学们帮我看一看,这两个流程图各有什么优缺点?哪个流程图代表的算法更好?生:小组讨论,回答问题。师:经过对比和分析两种算法的流程图,我们会发现,如果考虑很多个数据比较大小时,第一种算法的运行速度慢、计算效率低,可扩展性差。而第二种算法设置了一个变量用来存储最大的数,每次比较后,都会将两个数中较大的一个存入该变量,这样使得多个数的比较变得非常容易,算法运行效率高。【设计意图】使用比喻,辅助学生理解算法。通过小组讨论和提问环节,激发学生的求知欲。二、构建比较大小所需的关系表达式1.关系运算符师:在数学课上,我们把“A比B大”的自然语言转化为“A>B”的数学语言。类似的,在Python语言中,把表达式描述给计算机,需要使用关系运算来实现。关系运算符是对数值或其他值进行操作,并得到逻辑结果的一种运算符。关系运算符的优先级低于算术运算符,也就是算术运算符和关系运算符同时存在的时候先算算术运算符,再算关系运算符。关系运算的结果就是运算符两端的表达式或数值之间的关系是否成立,结果只有True(成立)和False(不成立)。这个运算结果称为逻辑值。2.关系表达式师:使用关系运算符把两个算术表达式(或字符串表达式)连接起来的式子,被称为关系表达式。关系表达式的值是逻辑值,结果只能为“True”或者“False”。在Python语言中True的值对应数值1,而False的值对应数值0。师:同学们可以自己写出几个关系表达式吗?生:写出关系表达式。师:展示几名同学的关系表达式并点评。3.构建比较大小的关系表达式师:我们在前面的算法流程图里设置了,a、b代表两个出价。如果a是30元,b是20元,那么a>b的关系运算结果就是“True”;如果a是20元,b是30元,那么a>b的关系运算结果就是“False”。因此,用于判断的条件表达式,可以用“a>b”这一关系表达式来表达。在Python语言中,赋予计算机“判断”能力的是选择结构,它通过关系运算的结果,判断执行哪个分支,从而实现逻辑判断。【设计意图】运用讲解法,使学生理解Python中的关系运算符和关系表达式。三、程序的实现1.编写程序师:接下来,请同学们参考流程图,构建条件表达式,编写程序。要注意变量a、b、c的数据类型要转化为整型(int)或浮点型(float)。生:编写程序。2.程序测试生:参考课件表格输入测试数据,进行程序测试并修改程序。师:点评学生的程序,讲解范例程序如何编写。【设计意图】本次编程难度不大,故让学生写完程序后先测试程序,再参考示例修改自己的程序,可增加编程的乐趣。由于有的学生可能未消化知识点,所以教师仍须解释代码含义,加深学生的理解。?课堂总结练习与思考设计两组题目:写出所列关系表达式的值;写出所描述内容的关系表达式。【设计意图】巩固关系表达式构建和计算的知识。 展开更多...... 收起↑ 资源预览