ボクハソウオモウンデス: 2進法の数当てゲームを考える。

2015/04/23

2進法の数当てゲームを考える。

思った数を当てるってやつです。2進法使ってます。

この手のやつって理屈が解ると「マジでなんなのくだらねー」ってなるんですけど
理屈が解んないと「は?マジ?何それ?」とかなります。

今回のやつのタネは2進法ですので、2進法って何だよってことも書けたら便利かなーと思ったりしてます。
ではー。

というわけで取りあえず。数を当てます。

  1. 1~15までの数字の中で好きな数字を思い浮かべて下さい。
    (例えば5とする。)
  2. 上の図の中で、どのボックスにその数字が入っているか教えて下さい。
    (5の場合はAとCに入ってますね。)
  3. AとCですか、じゃぁ5ですね。

という感じです。
時間をかけてAとCにしか無い数字を探せばそりゃできるので、まぁ1秒以内に答えなきゃダメですね。

そんな感じです。
はじめてやられると「は?何でそんなに早く解るの?」ってなります。

グダグダいってるのもアレなのでさっさと種明かししちゃいましょう。


ですがそのまえに。少しだけ2進法のベンキョーです。

2進法が解るとこのタネはすぐ解っちゃう。

「2進法?中学校だか高校だかで聞いたことあんなー」
「あ、パソコンの中身は全部2進法とかいうあの2進法?」
「うん、聞いたことあるような気がせんでもない気がせんでもなくはないっす。」
「良く解らないけどクソむずいやつでしょ?」

程度には知ってる言葉かと思いますが。
そんな難しい話ではなくてですね。
この図を少し眺めていただいて。

左側がいつも我々がよくつかっている10進法ってよばれるやつです。

10の0乗の位 1の位
10の1乗の位 10の位
10の2乗の位 100の位
10の3乗の位 1000の位

と読み替えると解りやすいかと思うのですがどうでしょう。
こいつの10を2に変えたものが2進法ってやつです。

右から

2の0乗の位 1の位
2の1乗の位 2の位
2の2乗の位 4の位
2の3乗の位 8の位

とみてやると、ただ10が2に変わっただけって感じで見えるような気がしますよね。
そんな感じの理解でOKかと思います。

2進法って要するに。

10進法では0~9までの数字が使えますが
2進法では0と1の2つの数字しか使えません。

だから、
「1000が2つと、100が5つと、10が6つと、1が4つで2564。」と考える10進法に対して
「2の3乗がある、2の2乗がある、2の1乗がない、2の0乗がある。」と、
“ある”か“ない”かだけ考えます。2進法。

ちなみにこの画像の右側の2進法は10進法でいうと
8+4+0+1=13を表しています。



ちょっとだけ練習してみます。

もう解ってるわよ。って言う人はこんな部分はすっ飛ばすとイイです。
後ろの(2)は2進法で表しています、(10)は10進法で表しています、っていう意味です。

111(2) 4+2+1 7(10)
1011(2) 8+0+2+1 11(10)
10001(2) 16+0+0+0+1 17(10)
101011(2) 32+0+8+0+2+1 43(10)

「うん、まぁ何となく。」
程度になればOKかなと思います。

というわけで、2進法の数当てゲームの仕組み。

さぁ、思った数字が入っているのはどこだい?の、この図なんですけど

Aには1,3,5,7,9,11,13,15
Bには2,3,6,7,10,11,14,15
Cには4,5,6,7,12,13,14,15
Dには8,9,10,11,12,13,14,15

が入ってます。
これ、全部2進法に直したのを一覧にした図がこちらなんですが

ちょっと眺めてもらって、すぐに気づく方もいらっしゃるかもしれませんが
一応色付けて気づきやすくしてみますと

こんな感じ。どうでしょ。
「あー。」ってなったらたぶんその通りで

Aの表は2の0乗=1の位が全部1
つまり「1が、ある」数字です。

Bの表は2の1乗=2の位が全部1
つまり「2が、ある」数字です。

Cの表は2の2乗=4の位が全部1
つまり「4が、ある」数字です。

Dの表は2の3乗=8の位が全部1
つまり「8が、ある」数字です。

つまり2進法を10進法に直す手順と同じように
「ある」数字を足していけば思った数になるって事です。
(Aは1、Bは2、Cは4、Dは8、今回の表では左上にある数ですね。)

例えば先ほどの例だと

思った数は「5」
「AとC、にある。」
「1と4が、ある。」
「1+4=5」

といった感じに解ります。

もし「13」なら
「AとCとDに、ある。」
「1と4と8が、ある。」
「1+4+8=13」

という感じです。
2進法のことを知ってしまうと
「は?そんだけ?まじくだらねー。ケラケラ」ってなりますよね。

でも2進法のこと知らないと
「まじ?は?何で?どーせ何かズルいことしてんだろ!」ってなりますよね。

まとめ。

  • この表を使った数当ては、「ある」って言った表の左上の数を足せば思った数になる。
  • この数当ての仕組みは2進法です。
  • 2進法っていうのは「ある(1)」か「ない(0)」しか表せません。
  • 2進法っていうのは10進法の10を2に変えただけです。
  • というわけで誰か2進法知らなさそうな人にでもやってドヤ顔してやるとイイと思います。



    ちょっとだけ続き

    これ、4つの表でやってるのは
    15までの数字が2進法で1111の4桁で表せるからなんですね。

    てことは11111の5桁で表せる数、つまり31までやろうと思うと
    5つの表を使えばできます。

    もう1個先の111111の6桁で表せる数
    つまり63までやろうと思うと6つの表を使えばできるはずです。

    一応31までの表を載せておこうと思います。

    んー。数字増えると、どこに入ってるかちゃんと探す方がだるくてやんなっちゃうかもしれませんね。
    やっぱ15までがいいかもわかりません。