Scratch基础(七):自动排序
学习使用Scratch编写自动排序的程序。
在上一篇文章的基础上,编写相关程序,界面如下:
题目:
(1)随机选择的数字
(2)执行对数字的排序
(3)将排序的结果返回列表中
制作方法:
1、第一步的内容参见上一篇文章
2、对数字的排序并返回结果,程序如下
(1)采用【自制积木】
(2)定义的初始序号【变量】“a”,用于采集对应序号的数字
(3)第一个重复:
排序的方法采用的是依次对比法,即取第一个数字作为基数,此时默认它是最小的,把它的序号和数值存入【变量】"b"和“min”中
此处重复的次数是【列表】“项目数”-1次。
(4)第二个重复:
这个循环中的序号采用【变量】“c”
(5)比较数字大小:
开始重复对比序号“a”以下的数字大小,如果后面的数字要比刚才的“min”要小,则把后面数字的序号和数值存入"b"和“min”中
(6)本次数字比较后,序号【变量】“c”+1,表示下轮从下一个数字开始,然后依次重复比较完“初始值”后面的所有数字
(7)当这一轮的数字比较后,【列表】“最小值”的数值被替换成“初始值”
(8)【列表】“初始值”的数值被替换成“最小值”,(7)和(8)就把最小值替换到本轮的开始序号位置了。
(9)【变量】“初始值序号”“a”+1,表示,下轮开始从下一个数字开始又一轮的比较。
3、把【自制积木】加入到按钮“自动排序”的【当角色被点击】积木后面即可完成上述的程序。
参考:依次对比法的示例如下