スマホの「曜日設定」に隠された、おもしろい足し算の秘密
スマホのアラームやスケジュール帳で、「毎週月曜と水曜に鳴らす」といった曜日設定をよく使いますよね。
ぼくたちが何気なくチェックを入れているこの画面、実はスマホの裏側では、文字ではなく「たった1つの数字」に変換されて記憶されているのを知っていますか?
今回は、スマホの裏側で行われている、魔法のような「足し算のパズル」のお話です。
曜日ごとに配られた「カブらない背番号」
スマホのシステムの中では、曜日ごとにこんな「背番号」があらかじめ決められています。
月曜日:1
火曜日:2
水曜日:4
木曜日:8
金曜日:16
数字が「倍々」に増えていくのがポイントです。
じゃあどうやって曜日の組み合わせを数字ひとつで表現するのでしょうか?
とてもシンプルで「丸をつけたい曜日の数字を足し算するだけ」です。
実際にやってみよう!
① 月曜と水曜に予定がある人
月曜の「1」と水曜の「4」を足し算します。
1 + 4 = 「5」
スマホは「5」という数字1つだけを見て、「あ、月曜と水曜に丸があるんだな」と理解します。
② 月・水・金と、1日おきに予定がある人
月(1) + 水(4) + 金(16) =「21」
「21」という数字1つで、1日おきのスケジュールに早変わり。
③ 月曜から金曜までフル稼働の人
月(1) + 火(2) + 水(4) + 木(8) + 金(16) =「31」
全部足すと「31」。これが平日の箱が全部埋まっているサインです。
絶対ほかの組み合わせもあるでしょ
この足し算のすごさ:答えが絶対に「カブらない」
これの何がすごいかというと、「合計した数字を見ただけで、どの曜日を選んだかが絶対に特定できる」という点です。
ここで、ちょっとしたクイズです。
【問題】スケジュールの合計数字が「10」の人がいました。何曜日と何曜日に丸がついているでしょうか?
ヒント:【1、2、4、8、16】の中から、足して「10」になる組み合わせを探すだけです。
……。
……決まりましたか?
正解は、2と8を足した「火曜日と木曜日」です!
不思議なことに、この「倍々に増える数字」を使うと、どんな組み合わせで足し算しても、答えが同じになる他の組み合わせは絶対に存在しないようになっています。
だからスマホは仕事が早い!
「火曜日、木曜日……」と文字で覚えるよりも、「10」という数字1つだけで覚える方が、スマホにとっては圧倒的にデータが軽くて楽ちんです。
私たちが画面をポチポチ操作している裏側では、こんな風に「カブらない背番号の足し算」がハイスピードで行われています。
次にスマホの曜日設定を見たら、「今、裏側で足し算されたな……」と、ちょっとだけ思い出してみてくださいね。


めっちゃ面白くて為になる話でした。
文系出身でプログラムも独学なので、こういう考え方(思考のアイディア)に気づきにくいので、個人的にはすごく面白くてためになりました。
ifなど条件分岐だったり、数字で振り分け管理がうまくできるようになるとプログラムを組む時や人の作動の裏側を考えて再現する際にとても役立つなと思いました。