【子ども向け】論理演算(かつ・または・ではない)とは?Scratchを使ってわかりやすく解説

プログラミングをしていると、「もし~ならどうする?」という判断はんだんがたくさんてきます。

たとえば、

  • ボタンをおしたらうご
  • ぶつかったらまる
  • スコアが10以上いじょうになったらクリア

のように、「条件じょうけん」によってうごきをえる必要ひつようがあります。

 

でも、条件じょうけんが2つ以上いじょうになると、

  • こっちも、あっちも…どうかんがえればいいの?
  • 「かつ」「または」「ではない」っててきたけど、これっていったいなに
  • 言葉ことば意味いみがにていて混乱こんらんする

と なやむことが あるかもしれません。

 

そこで、この記事きじでは論理演算(ろんりえんざん)かんがかたを、むずかしい言葉ことばをできるだけ使つかわずに説明せつめいします。

論理ろんり演算えんざんは、

  • しん(true) =はい・ただしい
  • にせ(false)=いいえ・ただしくない

のどちらかでかんがえて、物事ものごとめたり かんがえたりする方法ほうほうです。

かつ(AND)」「または(OR)」「ではない(NOT)」これら3つのルールをわせることで、プログラムに「どんなときにうごくのか」「どんなときはうごかないのか」を、つたえることができます。

 

スクラッチでれいをあげながら、ひとつずつ説明せつめいしていくので、安心あんしんしてすすめてくださいね。(MakeCodeなどほか言語げんごでもかんがかたおなじです)

 

スポンサーリンク

真(true) と 偽(false)とは

真偽ブロック

プログラミングでは、ものごとを「はい」「いいえ」で判断はんだんするときに、

  • しん(true)
  • (false)

という2つのあたい使つかいます。

「はい/いいえ」をそのままあらわあたいだとかんがえると、イメージしやすいです。

 

たとえば、

  • いまあめがふっている?」 → ふっていればしん、ふっていなければ
  • 宿題しゅくだいをおわらせた?」 → おわっていればしん、まだなら

というように、きかれたことが「ただしいかどうか」を判断はんだんして使つかいます。

 

スクラッチでは、この「しん」か「」かをかえすブロックが六角形ろっかくけいになっていて、「真偽しんぎブロック」とばれます。
MakeCodeでも真偽しんぎブロックは六角形ろっかくけいになっています。

 

論理演算 3つのルール

論理ろんり演算えんざんには、とく大事だいじな3つのルールがあります。

  • かつ(AND)  :両方りょうほうともただしいときだけ、結果けっかただしい
  • または(OR)  :どちらかひとつでもただしければ、結果けっかただしい
  • ではない(NOT):反対はんたい意味いみにひっくりかえ

では、ひとつずつ説明せつめいしていきます。

 

かつ … AND(論理積)

かつ(AND)」は、2つのことが どちらもしんだったときにだけ OK(しん)になるかんがかたです。

論理演算 AND

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

たとえば、

  • あめがふっている かつ さむい」
  • 宿題しゅくだいができている かつ お手伝てつだいもした」

この2つのことが両方りょうほうほんとう(しん)なら、結果けっかしんになります。
どちらかひとつでも できていなかったらです。

A B A かつ B
しん
しん
しん しん しん

うえひょう真理値表しんりちひょうといいます。条件じょうけんわせと結果けっかをまとめたものです。

 

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

Scratch かつブロック

ネコのスプライトをクリックしたとき、ネコが「あか」と「くろ」のどちらにもふれているなら「おはよう!」とうプログラムです。

「かつ」ブロックは、2つの条件じょうけん両方りょうほうしんなら しんかえし、それ以外いがい場合ばあいかえします。

そして「もし~なら」は、条件じょうけん(~の部分ぶぶん)がしんのときになか処理しょりうごかすブロックです。

つまり、

  1. あかれた? → はい(しん
  2. ぐろれた? → はい(しん
  3. あかれた(しん)」 かつ 「くろれた(しん)」 → はい(しん
  4. 「もし~なら」ブロックの「~」の部分ぶぶんしんになるので、なか処理しょり(「おはよう!」とう)がうご

というながれになっています。

2つの「はい(しん)」がそろったときだけしんになるので、ネコは「あかだけ」「くろだけ」のときにはなにわない、というわけです。

 

または … OR(論理和)

または(OR)」は、どちらか1つでもしんならOK(しん! というかんがかたです。

論理演算 OR

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

たとえば、

  • れ または くもりなら 運動会うんどうかいをやる
  • ぼうしかぶる または 日焼ひやめをぬって 外出がいしゅつする

どちらかひとつでもできていればしんです。
両方りょうほうできていないときだけになります。

A B A または B
しん しん
しん しん
しん しん しん

 

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

Scratch またはブロック

ネコのスプライトをクリックしたとき、ネコがあかまたはくろにふれているなら「こんにちは!」とうプログラムです。

「または」ブロックは、2つの条件じょうけんのどちらかひとつでもしんなら、しんかえします。
なので、ふれているのが「あかだけ」「くろだけ」のときでも「こんにちは!」といます。

 

ではない … NOT(否定)

ではない(NOT)」は、しん反対はんたいにするかんがかたです。

論理演算 NOT

真なら偽に、偽なら真に

  • 「ライトがえている ではない」 → ライトがついている
  • あめがふっている ではない」   → あめはふっていない

このように、反対はんたい意味いみになります。

A Aではない
しん
しん

 

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

Scratch ではない

ネコのスプライトをクリックしたとき、ネコがあかにふれていないなら「こんばんは!」とうプログラムです。

「ではない」ブロックは、あたいをひっくりかえす(しんれかえる)ブロックです。

つまり、

  1. あかれた? → いいえ(
  2. あかれた()」ではない → 反対はんたいなので しん
  3. 「もし ~ なら」ブロックの「~」がしんになるので、なか処理しょり(「こんばんは!」とう)がうご

というながれになります。

あかにふれているときは「あかにふれた? → はい(しん)」となるので、
しん ではない → となり、ネコはなにいません。

 

まとめ

しん(true)と(false)という2つのあたい使つかって判断はんだんするしくみを、論理ろんり演算えんざんといいます。

  • しんにせ → はい・いいえ をあらわ
  • かつ(AND)  :両方りょうほうともただしいときだけ、結果けっかただしい
  • または(OR)  :どちらかひとつでもただしければ、結果けっかただしい
  • ではない(NOT):反対はんたい意味いみにひっくりかえ

最初さいしょすこしむずかしくえるかもしれませんが、じつは生活せいかつなかでも自然しぜん使つかっているかんがかたです。

論理ろんり演算えんざんがわかると、プログラムに「どんなときにうごくのか」をはっきりつたえられるようになります。

たとえばゲームなら、

  • てきにぶつかっていなくて、ジャンプボタンをおしたら
  • スコアが10以上いじょうまたは宝石ほうせきをゲットしたら

…といったように、おもいどおりのルールやうごきをつくれるようになります。

すこしずつ練習れんしゅうしていけば、きっと自分じぶん作品さくひんがもっとおもしろく、もっと自由じゆうになりますよ。
あせらず、一ずつすすんでいきましょう!

 

\【PR】オールカラー総ルビで読みやすい/
タイトルとURLをコピーしました