友情提示:380元/半年,儿童学编程,就上码丁实验室。
本节我们学习控制模块中的各个积木。控制模块主要包含各种循环控制,条件控制等。
当需要计算机重复的执行某一段脚本的时候,就需要用到循环积木,循环分为很多种:
(1)已知条件的循环,指定循环次数或者用循环计数器控制;
(2)用条件语句进行控制的未知条件循环,在条件成立的情况下循环。
(3)无限循环,它永远的重复执行,直到程序结束。
下面我们来制作一个小程序,一个守卫森林安全的小精灵,入侵者蝙蝠如果离他大于100步,小精灵则来回移动,如果小于100步,小精灵则开始追逐蝙蝠,直到抓到它。程序的主界面如下:
角色Gobo的脚本:
角色Bat2的脚本:
运行脚本看看,有什么效果?
当程序中用到无限循环的脚本时,如果结束循环或者停止脚本呢?Scratch提供一个“停止”积木,可以结束脚本,下拉菜单包含三个选项:
注意:由于程序终止运行了,因此这个积木后面不能再卡和其他的脚本
当程序打开窗口接收用户的输入时,由于输入的不确定性,程序需要验证输入后方可引用。我们来看看下面两段脚本:
上图用了两种不同的循环来接收用户的输入并进行有效性判断,他们的功能是一样的,在开发的过程中根据需要选择合适的循环。
在有的无限循环中,需要知道循环的次数,比如银行用户在输入密码时,如果输入错误达3次则锁定用户:
在程序还经常用到嵌套的循环,即一层循环里还嵌套了另外的循环。这个由于在程序中经常用到,我们就不细讲了。
脚本的重复执行除了用到各种循环外,还可以通过递归的方法来实现,递归必须结合过程来使用。所谓递归即自己调用自己,我们通过一个简单的程序来讲解递归的概念,我们要通过程序用一个三角形绘制这样一个图形:
可以用循环的方式来执行,也可以用递归的方法,我们来看看递归的脚本:
由于克隆体已在前面个章节的内容中介绍,这里就不再讲了。