在希腊神话中,有这样一个传说:
弗弗西斯,因为得罪众神之王宙斯,而被判罚到在一个永不超生的地方,每天周而复始、永不停歇地从山底推一块巨石到山顶。当石头到达山顶后,又将从另一端滚下来,弗弗西斯需要再次将石头推到山顶去,如此往复。众神都认为这是对弗弗西斯最残酷的惩罚。
在生活中,我们也需要面对很多循环:歌曲的节奏与旋律,舞蹈动作的交错与重复,花纹图案的回环往复,春去秋来,寒来暑往等等,周期性的轮回或空间上的重复。
对应地,我们需要在程序上实现这种效果。而重复性工作,是人类所厌恶的,却是计算机所擅长的。“循环语句”的出现,拯救了人类,简化了编程的操作。今天,就让我们一起来看看编程中的“循环”, 以及该如何用编程中的“循环",实现代码的简化和程序的优化。
一、“化繁为简”与编程中的“循环”
在编程中,循环是程序执行的一种方式,是执行重复指令,直至过程结束的一种结构。
简单来说,可以理解为:让电脑/AI/作品中的角色,重复多次地做同一件事。
以兔子为例,我们想让兔子一直蹦跳20次,然后停下来。
我们的代码可能是这样的:
按照这样的思路,我们需要将同样的积木重复拖动或复制20次。
如果我们想让兔子蹦跳100次、1000次,甚至无数次,我们可能要崩溃到哭——不只是兔子要累到吐槽的,我们人类也是要筋疲力竭的。
而小朋友一看到这么长的代码,吓到哇哇大哭:“说好的编程不难学的,怎么这么难!”如果,我们一不小心少拖动了一次,而电脑这个木讷的、不解风情的机器,它怎么能聪明地get到我们真正的意图呢?
所以,有没有简单的操作方法呢?
当然有的,那就是我们的“循环积木”。利用“重复执行”积木,就可以让电脑准确地“意会”到我们的想法,重复执行同样的操作20次就可以了。
而现代的工业化思想正是如此:用批量的机械自动化高效操作,代替人工重复多次的低效操作。
所以,为了让电脑自动循环重复地为我们工作,我们只需要开始的时候告诉电脑怎么做/达到什么目标,然后剩下的就是告诉他一直重复这个操作,然后在完成之后自动停止,这才是“循环积木”的存在意义之所在。这也是高效、省时、省力的法宝之一。
二、Scratch中有哪些循环积木?
如何用循环积木,实现特定效果?
1、Scratch中有哪些循环积木?
编程中的循环包括两种:计数循环和条件循环。
条件循环,又可以分为有限次数的条件循环和无限次数的条件循环。比如:科学家们脑海中的永动机属于无限循环,而现实中的永动机属于有限循环,也就是永动机在现实中根本不存在。
而Scratch中的循环积木都属于条件循环,对应地,主要包括以下三类:无限循环——永久循环积木;有限循环——重复执行xx次、重复执行直到。
1)无限循环——永久循环积木
反复执行直到案例/作品程序运行结束。积木代码如下:
2)有限循环——按次循环积木
反复执行指定的次数后结束循环。积木代码如下:
3)有限循环——按条件循环积木
反复执行直到满足指定的条件后结束循环。积木代码如下:
2、如何使用循环积木,实现特定运动特效?
接下来,我们用案例来演示一下Scratch循环积木的使用方法与执行效果。
1)永久循环积木效果
a 蝴蝶飞 :蝴蝶不停地煽动翅膀,通过重复执行积木,可以模拟蝴蝶不停飞行的运动状态。
积木代码如下:
b 蝴蝶往返运动 :蝴蝶不停地循环往返运动。通过重复执行积木,可以实现蝴蝶在AB两地往返飞行的状态。
积木代码如下:
2)按次循环积木效果
c 猴子上下:猴子先后爬上爬下2次后停止消失。
积木代码如下:
d 兔子蹦跳:兔子蹦跳10次后停止。
积木代码如下:
通过重复执行有限次数的积木,指定角色的重复运动次数,可以简化代码的书写。
3)按条件循环积木效果
e 毛球位移:毛球幽灵位移到特定位置后停止。
积木代码如下:
通过设定重复执行最终的目标和条件,可以实现特定的运动效果。
写在最后
学编程不仅仅是学编程,在数学中,“∞”代表无穷大;“10”“十””Ⅹ”代表数量10,而不是十根木棒或十个1。简化思想,可以极大得优化我们的工作和生活,在编程当中也有着广泛的应用。循环积木的出现,也正是“化繁为简、以一代十”简化思想的体现! 少儿编程学习成长之路,我们一直与你相伴!