今天我们进入“布尔逻辑”歌剧世界。
本教程大约1100字,阅读时间大约10分钟。
基础知识
布尔逻辑里有三个逻辑符号:或,且,非。如果有A,B两个判断结果,A,B是yes或no。
如果“A或B”是yes,那么A,B当中至少有一个是yes;
如果“A且B”是yes,那么A,B都是yes;
如果“非A”是yes,那么A是no;
第120关
小猴子需要等待老虎进入睡眠后才能走动,否则就会被老虎吃掉!
看看右侧的代码:
第1,2行的意思是:在老虎睡觉之前,小猴子要一直等待;
第3行,在老虎睡觉之后,小猴子走动10步。
显然,10步是不够让小猴子走到香蕉那的。
可以用尺子测量,大概需要走20步。
代码改过如下:
点击运行,看效果!
三星通关!
第121关
这一关里,老虎被一只憨笨的熊取代。
没有什么难度,我们只用把右侧的代码改写一下。
改写成和上一关一样的形式:
点击运行,看效果!
三星通关!
第122关
当出现多个香蕉的时候,我们只需要引入之前学过的for循环就可以解决了。
看右侧的代码区域,我们发现第3行出问题了,在熊睡觉之前,我们需要小猴子等待,在熊睡觉之后,小猴子才能走到香蕉。
所以代码可以改成如下的形式:
点击运行,看效果!
三星通关!
第123关
如果同时遇到了老虎和熊呢?
如果同时遇到两只凶猛的动物,可以用“and”来同时处理老虎和熊的状态。
这个“and”就是布尔逻辑里的 “且”!
我们看右侧的代码:
第4行的转720度是没有必要的,所以我们去掉,得到如下的代码:
点击运行,看效果!
三星通关!
第124关
这一关和上一关一样,我们再做一遍。
看看右侧的代码,是不是觉得好复杂!
其实第3-9行的代码都是没有价值的,我们只需要去掉第3-9行,然后加上一句让小猴子走向香蕉的代码:goto banana就可以了。
修改后的代码如下:
点击运行,看效果!
三星通关!
第125关
这一关,我们的小猴子只需要等待老虎和熊都睡着之后,走到对面去吃香蕉就可以通关了!
看看右侧的代码:
第3行是有问题的,因为这行代码只考虑了熊的睡眠状态,没有考虑老虎的睡眠状态。
所以我们要在第3行加上“and tiger.sleeping()”就可以了,修改后的代码如下:
点击运行,看效果!
三星通关!
第126关
这一关,我们不仅有老虎和熊,还有小猴和山羊,所以需要多考虑一种情况!
看看右侧的代码:
第3,4行是有问题的,问题在于没有考虑老虎的睡眠状态;
第5-8行是没有必要的,而且没有让小猴和山羊走向对面的香蕉。
所以我们可以修改代码如下:
点击运行,看效果!
三星通关!
第127关
这一关里,我们只需要小猴先等到老虎和熊睡觉之后,走向上面那个香蕉;然后再次等待老虎和熊睡觉之后,再走向下面的香蕉就可以通关了。
看看右侧的代码:
我们需要修改第3,4行,把yes改成熊和老虎是否睡觉的代码:
修改后的代码如下:
点击运行,看效果!
三星通关!
这次我们一起通过了“布尔逻辑”世界的前8关,下一次我们将一起通过“布尔逻辑”世界的后8关!