小学信息技术义务教育版(2024)五年级全一册第16课 比较交换找最值多媒体教学ppt课件
展开排序算法是计算机解决问题的基础算法之一,可以将无序的数据按照特定顺序排列。
在排序过程中,需要对数据进行比较,并根据比较结果来决定是否交换位置,从而实现排序。最终的排列顺序可以是升序(从小到大)或降序(从大到小)。
了解在一组无序数中找出最大数的基本步骤,并能辨认其中的循环操作。
分析、描述找出最大数的算法,体验用程序验证算法的一般过程。
第16课 比较交换找最值
日常生活中,我们常常遇到找出最大数的问题,如找出身高最高的人、找出直径最大的水果、找出某月气温最高的一天等。本课通过逐个比较数值大小的方法来找出最大数,认识其中包含的算法。
日常生活中,我们常常遇到找出最大数或最小数的问题,如找出身高最高的人、找出直径最大的水果、找出某月气温最高的一天、找出同款价格最低的商品等。
想一想,你还知道哪些与“最值”有关的事情?
一 描述找出最大数的算法
二 验证找出最大数的算法
桌上有5个信封,编号分别为1、2、3、4、5,每个信封里装有一张卡片,卡片上写着一个大于0的数,请找出其中的最大数。
一、描述找出最大数的算法
活动规则:每次只能打开一个信封,查看卡片上的数后把卡片放回原信封内,才能继续打开另外一个信封,查看卡片上的数。 活动要求:以小组合作探究的方式,找出解决问题的算法,并描述算法的基本步骤。
寻找最大数的方法和步骤。
用A卡记录最大值,把信封里的数记录在A卡上后放回去。
依次打开其他信封,比较数值,如果值大就更新。
第1步:准备一张新卡片,称为A卡,用来记录查找过程中的最大数。第2步:打开第一个信封,查看卡片上的数并记录在A卡上。第3步:打开第二个信封,查看卡片上的数并与A卡上的数比较,如果这个数比A卡上的数大,那么把A卡上的数更新成这个数,否则不更新。第4步:用同样的方法,依次打开第三个、第四个、第五个信封,查看卡片上的数,并与A卡上的数比较,决定是否更新A卡上的数。第5步:最后,A卡上的数就是最大数。
在以上步骤中,从第3步开始就是重复操作。如果首先在A卡上记录0,第2步就可以是重复操作。可以构建循环结构来描述算法。
算法涉及搜索、比较、交换等操作。
第1步:在A卡上记录0。 第2步:按顺序打开一个信封,查看卡片上的数,把这个数与A卡上的数比较。如果比A卡上记录的数大,那么把A卡上的数更新成这个数,否则不更新。 第3步:对每个信封做第2步的操作。 第4步:最后,A卡上的数就是最大数。
找出最大数并记录所在的信封,应该如何改进算法呢?
这样用前面的算法步骤就能完成任务。
需要一张新卡片记录最大值的信封编号。
在寻找最大数的过程中,一共要循环多少次?也就是说,要做多少次“比较两个数大小”的操作?如果是5 000个数呢?
上面的例子里一共5个数,用在A卡上写0的方法,要循环5次。
其实很简单,循环次数就是数据个数。
二、验证找出最大数的算法
在Pythn中,列表是一种常见的数据序列,用于存储一系列数据。例如,下面的语句可以创建一个包含5个数的列表。
这个列表的名称是bx,把数据放在方括号 [ ]里。
每个数据之间用英文逗号“,”分隔开。
通过下标来引用列表中的数据。 列表下标从0开始,而不是从1开始。也就是列表第一个数据的下标是0,第二个数据的下标是1,依次类推。
利用len( )函数可以获取列表中的数据个数。
其中cc=len(bx)是赋值语句,表示把len()获取的bx列表的数据个数保存到变量cc中。
在Pythn中,用while循环可以实现算法的循环结构。
while循环基本格式如下。 while 判断条件: 语句组
当循环的次数不确定时,可以根据条件进行判断。当条件成立时,执行条件后的语句;当条件不成立时,结束循环。
打开找出列表中最大数的程序并运行,分析程序与算法的关系。
bx = [24, 91, 42, 108, 35] cc = len(bx) a = bx[0] i = 1 while i
#创建一个包含5个数的列表#用cc保存bx列表中的数据个数#用a保存最大数,初始值设为列表第0项#循环变量初始值设为1#用循环结构逐个比较列表中的数#如果当前数大于a的值#更新a的值#循环控制变量增加1,继续循环#输出找到的最大数
在while循环中,用变量a保存最大数,并用条件语句if来比较。当前数bx[i]的值是否大于已经找到的最大数a。如果是,就将a的值更新为bx[i]的值。这样,通过循环操作逐个查找,找出列表中的最大数并更新到变量a中。
控制变量i,从1变化到等于cc的值(数据个数)时,结束循环。循环结束后,输出变量a的值,就是这个列表中的最大数。
分析循环次数发现,程序进行了4次循环,比前面活动中少循环一次,这是为什么呢? 观察发现,前面活动中先在A卡上记录0,再进行数据循环比较,而程序实现时,先在变量a中保存第一个数,再用这个数与第二个数比较,因此,可以减少一次循环。
1.在无序数中找出最值的算法,在生活中有很多应用案例,只要细心观察,就会发现它们的存在和所起的作用。 2.寻找最值的算法主要采用了记录、比较、交换以及循环判断等操作,这也是对数据进行比较运算的基本方法。
随意列举一些无序的数,要从中找出最小数,应该如何操作?尝试用程序验证。
小学信息技术义务教育版(2024)四年级全一册第22课 探寻趋势与规律说课课件ppt: 这是一份小学信息技术义务教育版(2024)四年级全一册第22课 探寻趋势与规律说课课件ppt,文件包含第3章对圆的进一步认识章末重点题型归纳原卷版docx、第3章对圆的进一步认识章末重点题型归纳解析版docx等2份试卷配套教学资源,其中试卷共111页, 欢迎下载使用。
小学信息技术义务教育版(2024)四年级全一册第21课 展现数量的关系图片ppt课件: 这是一份小学信息技术义务教育版(2024)四年级全一册第21课 展现数量的关系图片ppt课件,文件包含第3章对圆的进一步认识章末重点题型归纳原卷版docx、第3章对圆的进一步认识章末重点题型归纳解析版docx等2份试卷配套教学资源,其中试卷共111页, 欢迎下载使用。
义务教育版(2024)四年级全一册第12课 二值的黑白图像说课ppt课件: 这是一份义务教育版(2024)四年级全一册第12课 二值的黑白图像说课ppt课件,共23页。PPT课件主要包含了学习目标,问题情境,学习活动,1编码,解码猜作者等内容,欢迎下载使用。