资源简介 中小学教育资源及组卷应用平台第三单元特殊的线性表项目四探索电子排队预订功能的实现——队列的应用第三课时程序实现?教材分析本节的主要内容是程序实现。通过以探索电子排队预订功能的实现为主线,整个项目分为问题分析、设计算法和程序实现三个部分。本节课是根据算法,用Python编程实现排队预订的进队与出队操作。通过本节课的学习能培养学生的信息意识和计算思维能力。?教学目标1.能用Python编写程序,实现进队、出队操作;2.培养学生的信息意识和计算思维能力。?教学重点1.用Python编写程序,实现进队、出队操作。?教学难点1.用Python编写程序,实现进队、出队操作。2.培养学生的信息意识和计算思维能力。?教学方法体验法、讲授法、讨论法、示例法?教学准备 计算机教室、多媒体设备、多媒体广播软件、教学课件、Python编程环境、学生上机练习的程序文件,预先编制的Python程序文件等。?教学过程一、新课导入在算法流程框图中完成进队和出队操作(数组名和变量名可以自取)。进队操作出队操作活动答案参考:巩固进队、出队算法知识。二、python中List与array互换1.输入list:>>>importnumpyasnp>>>a=[[1,2],[3,4]]>>>type(a)'list'>2.将list转换为数组:>>>b=np.array(a)>>>barray([[1,2],[3,4]])>>>type(b)'numpy.ndarray'>3.将数组转换为list:>>>c=b.tolist()>>>c[[1,2],[3,4]]>>>type(c)'list'>三、程序实现根据上述算法,可以利用学过的编程知识来编程实现排队预订。首先要定义队列的类型并进行初始化(即置空)操作,指针变量要设定初始值。用列表表示队列的类型定义如下:classSqQueue:self_init_(self,size):#队列初始化self.size=size#定义队列长度self.queue=[‘’]size#存储队列元素的列表self.front=0#头指针self.rear=0#尾指针self.number==0#计数器四、课堂活动打开配套资源中“循环顺序队列py”程序,补充完整以下代码,并进行运行测试,模拟实现排队预订功能。defEnQueue(self,e):#进队程序if(self.number==self.size):print("队满,不能进”)else:self.queue[self.rear]=e——————————self.number=self.number+1defOutQueue(self):#出队程序ifself.number==0:print("队空")return-1else:e=self.queue[self.Front]——————————self.number=self.Number-1returne参考答案:进队程序空白处填写:Self.rear=(self.rear+1)%self.size出队程序空白处填写:Self.front=(self.front+1)%self.size21世纪教育网www.21cnjy.com精品试卷·第2页(共2页)HYPERLINK"http://21世纪教育网(www.21cnjy.com)"21世纪教育网(www.21cnjy.com)(共20张PPT)第三课时程序实现信息技术沪教版选择性必修1第三单元特殊的线性表项目四探索电子排队预订功能的实现——队列的应用一、新课导入二、python中List与array互换三、程序实现四、课堂活动一、新课导入在算法流程框图中完成进队和出队操作(数组名和变量名可以自取)。进队操作完成下面的任务开始队不满吗?否是结束在算法流程框图中完成进队和出队操作(数组名和变量名可以自取)。进队操作完成下面的任务开始队不满吗?否是结束queue[rear]←erear←(rear+1)%queue.Mnumber←number+1在算法流程框图中完成进队和出队操作(数组名和变量名可以自取)。出队操作完成下面的任务开始队不空吗?否是结束在算法流程框图中完成进队和出队操作(数组名和变量名可以自取)。出队操作完成下面的任务开始队不空吗?否是结束number←number-1front←(front+1)%queue.Me←queue[front]二、python中List与array互换1.输入list:>>>importnumpyasnp>>>a=[[1,2],[3,4]]>>>type(a)'list'>2.将list转换为数组>>>b=np.array(a)>>>barray([[1,2],[3,4]])>>>type(b)'numpy.ndarray'>3.将数组转换为list>>>c=b.tolist()>>>c[[1,2],[3,4]]>>>type(c)'list'>三、程序实现根据上述算法,可以利用学过的编程知识来编程实现排队预订。首先要定义队列的类型并进行初始化(即置空)操作,指针变量要设定初始值。用列表表示队列的类型定义如下:classSqQueue:self_init_(self,size):#队列初始化self.size=size#定义队列长度self.queue=[‘’]size#存储队列元素的列表self.front=0#头指针self.rear=0#尾指针self.number==0#计数器四、课堂活动打开配套资源中“循环顺序队列py”程序,补充完整以下代码,并进行运行测试,模拟实现排队预订功能。defEnQueue(self,e):#进队程序if(self.number==self.size):print("队满,不能进”)else:self.queue[self.rear]=e——————————self.number=self.number+1打开配套资源中“循环顺序队列py”程序,补充完整以下代码,并进行运行测试,模拟实现排队预订功能。defEnQueue(self,e):#进队程序if(self.number==self.size):print("队满,不能进”)else:self.queue[self.rear]=eself.number=self.number+1self.rear=(self.rear+1)%self.size打开配套资源中“循环顺序队列py”程序,补充完整以下代码,并进行运行测试,模拟实现排队预订功能。defOutQueue(self):#出队程序ifself.number==0:print("队空")return-1else:e=self.queue[self.Front]——————————self.number=self.Number-1returne打开配套资源中“循环顺序队列py”程序,补充完整以下代码,并进行运行测试,模拟实现排队预订功能。defOutQueue(self):#出队程序ifself.number==0:print("队空")return-1else:e=self.queue[self.Front]self.number=self.Number-1returneself.front=(self.front+1)%self.size谢谢21世纪教育网(www.21cnjy.com)中小学教育资源网站有大把高质量资料?一线教师?一线教研员?欢迎加入21世纪教育网教师合作团队!!月薪过万不是梦!!详情请看:https://www.21cnjy.com/help/help_extract.php 展开更多...... 收起↑ 资源列表 项目四(第三课时).doc 项目四(第三课时).pptx