3.1 循环的基本概念
3.1.1 你喜欢的书或电影看了几遍呢?
平常大家都喜欢看书吧?最喜欢哪本呢?《哈利·波特》?和你的朋友讨论时,你也许会说:《哈利·波特》,我都看了三遍了!你的朋友们会立刻对你刮目相看,哇!都看了三遍。
这句话很简单,但包含了两个重要信息:
看《哈利·波特》。
三遍。
第一个信息说明什么呢?你做了一件事,这件事是“看《哈利·波特》”。第二个信息说的是你做这件事的次数——三遍!同样的例子你可以举出很多:“我把这首诗背了两次”“他绕着操场跑了5圈”……这些例子的共同特点是“做一件事+次数”。
对应于计算机语言的结构,就是“循环”。
循环的英文是“loop”,意思是:The actions of doing something over and over again。译成中文就是:一个或一组反复执行的动作。
结合上面的例子,可以看出,对于循环来说,有两点很重要:执行的动作,要做多少次,也就是次数。
使用循环有什么好处呢?我们再来看《哈利·波特》。你如果说:“我看了一遍《哈利·波特》,我又看了一遍《哈利·波特》,我接着又看了一遍《哈利·波特》。”怎么样?很麻烦吧,你得说三遍来表达你看了三次,这个对应于第2章,通过“顺序”的方法实现了你想要说的。但如果你说“我看了《哈利·波特》三次”,那么意思是一样的,但是你用很短的一句话就表达了上面三句话的意思。
这就是使用循环来处理重复动作的好处——简洁。
3.1.2 Scratch中的循环
在Scratch中,循环是用一些看上去很特殊的积木块来实现的。这个积木块在Scratch积木区的“控制”分类里(见图3-1)。
图3-1 循环所使用的积木块
在图3-1中,蓝色方框的那两个积木块就是代表循环的积木块,这些积木块像不像一个张开的大嘴?你能想象要被反复执行的动作积木块应该放到哪里吗?
试一试
这个大嘴怎么用呢?
答案是放到“嘴里”。不用担心,虽然原有“积木块”的嘴看上去不够大,但是里面加入其他积木块后,它会自然扩大的。
在图3-2中,“移动10步”那个积木块就像你说的“看《哈利·波特》”一样,是循环的内容,“重复执行10次”是循环的次数。
如果想要修改循环的次数,应该怎么做呢?在第2章里,我们讲了如何修改Scratch积木块里的数字,这里的修改方式是一样的。复习一下具体步骤。
1)鼠标单击“重复执行10次”,其中的“10”会变成灰底。
2)输入想要重复的次数,例如“5”,就可以了。
过程如图3-3所示。
图3-2 Scratch的循环
图3-3 循环次数的修改
是不是很简单啊。现在赶紧尝试运行这两个程序段吧。
注意
测试之前别忘了在顶上加上“当被点击”。