論理演算ノードについて
妹「両方ともTrueだったら、Trueが出てくるのがANDノードだよね? これ逆に両方ともFalseだとTrueが出てくるノードはないのかな?」
「ANDとかORとか全部ひっくるめて論理演算っていうんだけど……」
妹「それ。自分で調べてみてたんだけど、何やら数学めいた言葉とか、変な機械みたいな図しか出てこなくて、でもこれってそんなにむずかしい話じゃないよね?」
「日本語で書くとこんな感じ。[AND]と[OR]と、あと[NOT]は知ってると思うんだけど、基本的にはそれだけで足りる。両方ともFalse時にTrueになるのは[NOR]。でもこれ使わなくても、ORの後にNOTをつないだり、それぞれNOTを通した後でANDにつないでもいい」
妹「それだとノードが増えてしまうのでは?」
「文字でプログラミングする場合だと字数の関係で気にならないんだけど、ブループリントだとノードが面積使うからね。たしかに1つで済ませたくなる。どういうノードだったか見てもすぐに思い出せないのが難点だけど」
妹「XORというのも、ANDとORとNOTで作れるの?」
「XORはそれでは作れないんだけど、要するに2つのピンが違う時なんだから、Boolean型なら[XOR]じゃなくて[!=]を使っても同じことだし、その方がわかりやすい。ピンが同じ場合も、XORにNOTをつながずに[==]ノードでいい」
妹「Booleanじゃなかったら、[XOR]と[!=]は違うの?」
「違うけど、それはちょっとむずかしい話になるし、最近だとあんまり使う機会はないと思う」