天才としか、、、

この間来られていた、ロボット教室のお母さんとの雑談。

この子じゃなくて、お兄ちゃんの方なんですけど、日付を言えば曜日がわかるんですけど、なんでかわかります?
え?マジですか?計算してるんですか?覚えてるんですか?
計算はしているようなんですけど、説明ができないそうなんです。それに、他にも過去の出来事の日付を全部覚えてたりもするんです。
え?天才じゃないですか!
何かに使えませんかねぇ、、、
うーん。年号覚えるの得意そうですね。

という、情けない返事しかできず(笑)

ちょっと調べてみました。
日付から曜日を当てる計算。

いろんなやり方あるみたいですけど、その中でも一番簡単そうなのがこれです。

※1月、2月は、前年の13月、14月と考える。
※1900年3月1日から2099年2月28日まで有効な方法←理由はわかりません。

・「月+1」の倍、半分、0.1倍の合計(小数点以下切り捨て)
・日付
・西暦下2桁
・西暦下2桁÷4(小数点以下切り捨て)
以上の合計を出す。
・2000年1月1日以降であれば1を引く
・その数を7で割った余りが求めたかった数字
0なら日曜日
1なら月曜日
2なら火曜日
3なら水曜日
4なら木曜日
5なら金曜日
6なら土曜日

この流れをスクラッチで再現して、ソフトを作ってみました。
スクラッチ公式サイトに共有というのも初めてやってみました。
曜日当てソフト
日付を入れると曜日が出てきます。
※残念ながら、PCでしか見れません。

1900年3月1日 なら木曜日

2099年2月28日 なら土曜日とちゃんと出ます!

ただ、ときどき違う気がしますが、その辺はご愛嬌!
ってか、ググったら出るんだからこんなの作っても意味ないんですけど、スクラッチの練習としてやってみました。

こういう計算が頭の中で繰り広げられているのかどうなのか?
いずれにしても天才ですね。
不思議です!

またお母さんと話してみよっと。