视频字幕
欢迎学习使用Scratch编写打擂法程序!打擂法是一种经典的算法思想,用于在一组数据中找到最大值或最小值。就像古代打擂台一样,第一个选手自动成为擂主,后续选手逐一挑战擂主,如果挑战者更强就成为新擂主,最后剩下的就是最强者。在Scratch中,我们可以用这些积木块来实现打擂法算法。
欢迎学习使用Scratch编写打擂法程序!打擂法是一种在一组数据中找出最大值或最小值的经典算法。它的原理就像擂台比武一样:每个新来的选手都要和当前的擂主进行比较,如果新选手更强,就成为新的擂主;否则原擂主继续保持地位。最后剩下的擂主就是最强的,也就是我们要找的最大值。
现在我们开始第一步:创建数据和变量。首先,我们需要创建一个列表来存储要比较的数字。在Scratch中,点击变量分类,然后选择建立一个列表,将其命名为数字列表。接下来,我们创建一个变量来存储当前的擂主,也就是最大值。同样在变量分类下,选择建立一个变量,命名为最大值。最后,我们向列表中添加一些测试数据,比如10、5、25、8、15这些数字。
第二步是初始化擂主。我们需要给最大值变量设置一个初始值,通常选择列表的第一项作为初始擂主。这样可以确保我们至少有一个参考值来进行比较。在Scratch中,我们拖拽将最大值设为的积木块,然后连接列表数字列表的第1项积木块。执行后,最大值变量就会从0变成10,也就是列表的第一个数字。
第三步是实现循环比较的核心逻辑。我们需要从列表的第2项开始,逐一遍历每个数字,将它们与当前的擂主进行比较。如果发现更大的数字,就更新擂主。在Scratch中,我们使用重复执行积木块来实现循环,次数设为4次,因为我们要检查剩下的4个数字。在循环内部,使用如果那么积木块来判断当前列表项是否大于最大值,如果是,就将最大值更新为当前列表项。
让我们来总结一下今天学到的内容。打擂法是查找一组数据中最大值的经典算法,核心思路是逐一比较,不断更新擂主。在Scratch中,我们通过变量存储擂主,用列表存储数据,用循环遍历比较,用判断语句更新擂主,完美实现了这个算法。这个方法不仅可以找最大值,还可以稍作修改来找最小值或第二大值。通过这个练习,我们不仅学会了编程技巧,更重要的是培养了逻辑思维能力。