排序算法的应用-教学设计1(表格式).docx
教学设计课程基本信息课题5.3数据排序一持序律法的应用教学目标1、能对给定的文件中的数据进行抽象并建立模型,2、能合理选用数据结构,设计排序算法。3、能用Python用言嫔写具体的排序程序.4、能自觉对学习生活具体问题抽象建模、设计算法并编写程序及询试程序,如:对成绩进行同分同名次排名、按排车辆考场等.指向的核心素养信息意识:有目的对数据进行抽样包模,本课R觇学生时学习生活中的问题利用计算机的程序设计思想进行处理.十弊思雄:合理选用数据结何,自觉对学习生活中的具体问题抽象建模、设计算法并编写程序及调试程序,如:对成绩进行同分同名次排名、按排车辆考场等,但会以合理的方式落实教学目标.数字化学习与创新:运用数字化工具建构知识.信息社会贲任:本节课学生招利用信息技术解决实际生活学习问题.教学内容教学重点:1 .抽象井建立模型.2 .设计排序算法。3 .用Python谱音编写具体的排序程序教学碓点:自觉对学习牛.活具体问题抽象建模、设计算法并输写程序及调试程序教学过程一、课前回顾回顾上节课的日泡排序。二、项目学习:2022北京冬奥会金牌箱制金牌排行榜编制一抽象与建模I-JSS:每个国家的信息是条记录,包拈编号、国家/地区、各奖牌数等数据项。实践体验:Excel排序,对记录按关键字排序,并关注交换如何进行?二设计算法与数据结构方法一:是采用6个一维数组按列存储,即班个数组分别存储每个国家的编号、国家、各奖牌数等,如定义a数组存储去中26个国家的编号;定义b数俎存储衣中26个国家的国家名林,其对应的值为"中IlrJ澳大利亚”美国”加拿大"."法国”定义C数一存储表中26个国家的金牌数量,其时应的值为4,1,5,1,1,4,0,0,8,3:定义d数组、e数组、f数组分别存银牌、铜牌、总数方法二:是采用1个一维数组按行存储,每个数加元泰对应某个国家的一条记录信息.如1,中国,4,3,1,8对应中国的相关信息(三)编写程序k试卷编写程序2、给划线处塔上合适的语句3.分析并调试三、挑战实践:给2022北京冬奥会金牌编制金牌排行榜添加上金牌名次,而口同分数同名次,如何维续编程实现?*数据读入importcsvU导入CSY模块csvFile-OPen("jp.csv”,urr,)w打开jp.csv收据文件render=£:$松u<1。(£:!?于“0)«5建立一个读入数据的对象readera=4定义空列表aforiteminreader:#每一行为a列表一个元素,此元素为字符申a.append(item)#csv通过这种样式读入的数据为字符串CSVFile.close。#关闭jp.csv数据文件"国泡排序foriinranged,Ien(八)-l):二排序不包含第一行数据(索引为0)forjinrange。,len(八)-i):#从前往后日泡排序ifi11t(aj2D<int如j+l2D:#当前记录的金牌数比后一条记录少aj,aj÷l=aj+l.aj的当前记录与后一条记录交换位一二数据导入到jp2.csv中csvFile2=open(*jp2.csv,.'<',newline=*,)writer=csv.writer(csvFile2,dialect='excel')foriinrange(Ien(八)):writer.wriUrow(ai>csvFile2.closeO四、学习生活中的应用实践:在刚刚结束的联温考成绩统计中,请你帮忙微写程序,能统计各科总分,并按照总分从窝到低排序,并另加上总分名次,而且同分数同名次,成绩文件为“联盟.csv”,大概有5000左右考生,最后输出到“联盟2.csv”文件中,五,课堂小结:详见PpT六、学习评价:详见PPT七、课后作业:洋见PPT