逻辑

在日常生活里,不论是写程序、算数学,法庭攻防,甚至是路上交通、买卖东西或要不要起床,都包含许多「逻辑」的成分,逻辑可做许多的条件和判断,当满足了某些条件就会执行某件事,例如听见闹钟响就该起床、看到绿灯才可以行进…等状况,就是一些简单的逻辑判断。

逻辑积木清单

逻辑的积木分别由一个主要的积木「如果…执行…」( 前方有蓝色小齿轮的积木),搭配九种逻辑判断的积木( 判断式、逻辑运算子、数字型态、空值、包含值、真假值…等)。

../../../_images/logic-01.jpg逻辑

逻辑判断

「逻辑判断」积木预设有两种型态的组装「缺口」,在上方比较小的是「判断条件」,下方比较大的是「执行内容」,代表着如果情况满足判断条件( 判断回传为「真」或「ture」 ),就会执行对应的内容

../../../_images/logic-02.jpg逻辑

点选左上方的蓝色小齿轮,可以新增逻辑判断的条件,点一下可以打开,再点一下可以关闭。

../../../_images/logic-03.gif逻辑

逻辑判断条件有三种:「如果」一定是在第一层,「否则如果」位在中间,「否则」一定在最后,「否则」的判断条件表示当「如果」和「否则如果」的条件都没有满足,就会执行「否则」的内容。

../../../_images/logic-04.jpg逻辑

如果只有两个条件,例如非 A 即 B,就可以单纯使用「如果」和「否则」就可以,甚至可以不使用「否则」,这样在条件外就不会进行任何动作。

../../../_images/logic-05.jpg逻辑

判断条件式

判断条件式主要会放在逻辑的「判断条件」缺口内,提供不同情境的逻辑判断,判断的条件主要分为:等于(=)、不等于(≠)、小于(<)、小于等于(≦ )、大于(>)、大于等于(≧)。

../../../_images/logic-06.jpg逻辑

使用的方式只要把判断条件的积木,放到判断条件的缺口内即可。

../../../_images/logic-08.jpg逻辑

举例来说,可以先新增一个变量a 为0 到100 之间的随机整数,并让绿色小怪兽讲出数字,接着用逻辑判断,如果变量a 大于60 ( 回传判断为「true」 ),就让红色怪兽讲「及格」,否则就讲「不及格」,执行程序后就能看到对应的结果。

../../../_images/logic-09.jpg逻辑

逻辑运算子

「逻辑运算子」积木为逻辑判断提供了更弹性的判断条件,当中包含了「」与「」,如果使用「且」,在两端判断的条件空格必须都满足时,才会执行动作,如果使用「或」,只要其中一个条件空格满足就会执行动作。

../../../_images/logic-10.jpg逻辑

通常当逻辑判断里出现「如果否则」的时候,就会用到逻辑运算子,而逻辑运算子常常和判断条件的积木搭配使用。 ( 有时也会遇到只有「否则、如果」搭配逻辑运算子的情况 )

../../../_images/logic-11.jpg逻辑

以刚刚的例子来说,可以增加到四个判断条件,分别是 0、1~59、60~99 和 100,当判断条件成立时,就会让小怪兽说出数字以及对应的文字。

../../../_images/logic-12.jpg逻辑

判断数字型态

「判断数字型态」积木可以帮助我们快速判断奇数、偶数、整数、数字有小数点、文字或阵列

../../../_images/logic-13.jpg逻辑

用法上只要直接放入判断条件的缺口内即可。

../../../_images/logic-14.jpg逻辑

例如我们可以设定变量 a 为两个随机数相除,再透过小怪兽讲出整数或小数。 ( 除法的积木使用了「多行输入」,可以在积木上按右键选择多行输入,教学参考:程序积木小技巧 )

../../../_images/logic-15.jpg逻辑

判断空值

「判断空值」积木主要是针对和「阵列」积木搭配,如果是空值回传 true,否则回传 false

../../../_images/logic-16.jpg逻辑

会产生空值有几种情况:「无文字、数字0、空阵列、空值、false ( 假)、没有值的变量」,如果判断这几种情况是否为空,就会回传true 。

../../../_images/logic-17.jpg逻辑

判断是否包含文字

「判断是否包含文字」积木可以检查某段文字内,是否包含或不包含了指定的文字或文字段落。

../../../_images/logic-18.jpg逻辑

举例来说,如果检查「你是我的小呀小苹果」里面有包含「找到小苹果了」,绿色怪兽就会说「小苹果」,反之如果是「小柠檬」,红色怪兽就会说「没有小柠檬」。

../../../_images/logic-19.jpg逻辑

「非」积木就如字面一样,表示「不是什么」,通常会和「真/假」或「空值」的积木搭配使用。

../../../_images/logic-20.jpg逻辑

如果把积木接在「非」的积木后面,状态就会相反过来,例如空就会变成非空、真就会变假,假就会变真,依此类推。

../../../_images/logic-21.jpg逻辑

真/假

「真/假」积木主要表示ture ( 真) 与false ( 假) 两个值,目的在让判断的时候在数字、文字之外,多一些判断的条件,同时也可以将ture 和false 提交给变量,在否些情境下也相当好用。

../../../_images/logic-22.jpg逻辑

在写程序的时候,有时候会遇到某个变量或是某个数值变成空值 ( null ),这时就可以使用空值的积木判断,用法和「真/假」的用法类似。

../../../_images/logic-23.jpg逻辑

三元逻辑运算子

「三元逻辑运算子」积木是针对只有「两种条件」,并针对根据条件传回「两个运算式」的其中一个。

../../../_images/logic-24.jpg逻辑

如果用上面提到的及格与不及格的例子,因为只有两种条件,就可以透过三元逻辑运算子来轻松实现,且还可以使用比较少的积木完成同样的结果。

../../../_images/logic-25.jpg逻辑