3 编程思路与步骤 #
3.1 编程思路 #
(1)建立三个列表变量:“集合1”“集合2”和“相同的集合”。其中“集合1”和“集合2”是程序初始化给定的,而“相同的集合”是通过对比“集合1”和“集合2”计算出来的。
(2)建立五个变量:“i”,“j”,“temp1”,“temp2”和“相同总数”。
其中,只有“相同总数”是需要显示的,其他变量都不需要显示;变量“i”和“j”用于统计相同数;变量“temp1”和“temp2”用于存放两个集合的随机数。调整列表与变量在舞台中的位置,如下图:
(3)初始化变量。在计算的过程中,“i”和“j”从 1 开始计数,因为 Scratch 的列表变量第一项就是这里面的第一个数,没有第0 项。除此之外,还需要将所有列表清空,并设置相同总数为 0。
(4)初始化“集合 1”和“集合 2”。
所谓的初始化“集合 1”和“集合 2”是指将随机数存放在两个集合中。由于不知道随机变量是否已经存在于原来的集合中,因此,需要“temp1”变量存放随机数给“集合 1”,“temp2”变量存放随机数给“集合 2”。
但这需要一个前提,即“temp1”中的数并不能已经存在于“集合1”中,“temp2”中的数并不能已经存在于“集合2”中。
(5)把两个集合中相同的数放入“相同的集合”,计算“相同总数”。
单击空格键,程序依次从“集合1”中取出一项与“集合2”中每一项进行比较,如果相同,则放入“相同的集合”中,并让“相同总数”加1。
3.2 流程图及核心代码块 #
4.问答与练习 #
试着做一个比较顺序与本课不同的程序对两个集合进行比较。
本课中以“集合1”为基础与“集合2”进行比较,试着以“集合2”为基础与“集合1”进行比较,想一想程序是否有所不同。