論理演算(かつ・または・ではない)とは?スクラッチ(Scratch)を使って解説

今回は、スクラッチ(Scratch)やMakecodeの
「かつ」「または」「ではない」ブロックの使い方を解説します。

  • 「かつ」「または」「ではない」ブロックの使い方を知りたい
  • 真(true) と 偽(false)って何?

という人向けです。

「かつ」「または」「ではない」ブロックが使えるようになると、
条件分岐(もし~なら)で複雑な条件を使えるようになりますよ。

 

スクラッチを使って解説します。
(MakeCodeなど他の言語でも考え方は同じです。)

なるべくむずかしい言葉は使わないようにしました。
お子さんに説明する時の参考になればと思います。

 

スポンサーリンク

真(true) と 偽(false)とは

真偽ブロック

スクラッチの六角形のブロックは真偽(しんぎ)ブロックといいます。
MakeCodeも真偽ブロックは六角形です。

 

そもそも真(しん)偽(ぎ)って何?ってことですが、
カンタンに言うと

  • 真はそうだよ
  • 偽はちがうよ

という意味です。

英語で、真はtrue、偽はfalseと表現されます。

 

真偽ブロックはブロックの条件をみて、
そうだったら真、ちがったら偽を返すブロックです。

「かつ」「または」「ではない」ブロックも真偽ブロックのひとつ。
中に入れた真偽ブロックが返す値同士をくらべて、真または偽を返します。

 

かつ … AND(論理積)

両方とも真の場合のみ、結果は真

論理演算 AND

「かつ」ブロックは、2つの条件の両方が真なら、真を返すブロックです。
それ以外の場合は、偽になります。

 

スクラッチは演算カテゴリ、
MakeCodeは論理カテゴリにあります。

 

ABA かつ B

上の表は真理値表といいます。
真理値表は、入力の全ての組み合わせと対応する結果を表にしたものです。

 

「かつ」ブロックの使用例

Scratch かつブロック

ネコのスプライトをおしたとき、
ネコが赤と黒にふれていたなら「おはよう!」と2秒言うプログラムです。

ふれているのが赤だけだったり、黒だけだった場合はセリフを言いません。

 

「もし~なら」ブロックは、条件が真だった場合に中の処理を実行します。

 

PR自宅にいながら本格的プログラミング学習|Tech Kids Online Coaching

または … OR(論理和)

どちらかひとつでも真の場合、結果は真

論理演算 OR

「または」ブロックは、
2つの条件のどちらかひとつでも真なら、真を返すブロックです。

 

ABA または B

 

「または」ブロックの使用例

Scratch またはブロック

ネコのスプライトをおしたとき、
ネコが赤または黒にふれていたなら
「こんにちは!」と2秒言うプログラムです。

ふれているのが赤だけだったり、黒だけだった場合でもセリフを言います。

 

ではない … NOT(否定)

真なら偽に、偽なら真に

論理演算 NOT

「ではない」ブロックは、値を反転するブロックです。
真なら偽を、偽なら真を返します。

 

AAではない

 

「ではない」ブロックの使用例

Scratch ではない

ネコのスプライトをおしたとき、
ネコが赤ふれていないなら
「こんばんは!」と2秒言うプログラムです。

赤にふれている状態だとセリフを言いません。

 

まとめ

「かつ」「または」「ではない」ブロックの使い方について解説しました。

  • かつ … 両方が真なら、真
  • または … どちらかひとつでも真なら、真
  • ではない … 値を反転する(真→偽、偽→真)

 

かつ(AND)、または(OR)、ではない(NOT)などのように
真(true、1)または偽(false、0)の2つの値を使って演算することを
むずかしい言葉で論理演算(ろんりえんざん)といいます。

 

論理演算を題材にしたゲームもあるので、
興味があったらプレイしてみてくださいね。

 

タイトルとURLをコピーしました