はじまり
実家に帰ったら甥(6)にこんな質問をされた。
「💩+6は なーんだ?」
「カレーライス!」と適当に答えると、甥は満足そうに「正解!100点!」と言って去っていった。このとき私はまだ齢6才の甥がUnicodeを知っていることに気づいていなかった…。
💩の足し算を考えてみる
甥曰く
「先生に”数字以外で足し算はできません。"って言われた」
らしい。だがそんなことはない、Word2Vecで
「王様」- 「男」+ 「女」= 「女王」
の演算ができたように、💩にも四則演算を導入してあげればいいのだ!(適当)
「うんこ」という文字列に対して6を足すのは難しそうなので、絵文字「💩」に6を足すことを考える。絵文字に限らず文字は内部的にはUnicodeで表現されているらしい。(2020/06現在ではUnicode 13.0 が最新)
例えばフルーツと野菜は以下のような種類がある。参考
Unicode | 表示 | 名称 |
---|---|---|
1F345 | 🍅 | TOMATO |
1F346 | 🍆 | AUBERGINE |
1F347 | 🍇 | GRAPES |
1F348 | 🍈 | MELON |
1F349 | 🍉 | WATERMELON |
1F34A | 🍊 | TANGERINE |
1F34B | 🍋 | LEMON |
1F34C | 🍌 | BANANA |
1F34D | 🍍 | PINEAPPLE |
1F34E | 🍎 | RED APPLE |
1F34F | 🍏 | GREEN APPLE |
1F350 | 🍐 | PEAR |
1F351 | 🍑 | PEACH |
1F352 | 🍒 | CHERRIES |
1F353 | 🍓 | STRAWBERRY |
ここで足し算を
🍌 + 1 = (🍌のUnicode値 + 1 の絵文字) = 🍍
と決めよう。
その他演算も同様に
引き算:
🍌 - 1 = (🍌のUnicode値 - 1 の絵文字) = 🍋
わり算:
🍌 / 2 = (🍌のUnicode値 / 2 の絵文字) = 簾
かけ算:
🍌 * 2 = (🍌のUnicode値 * 2 の絵文字) = U3E698
また絵文字同士の四則演算も同様にできることにする。
※わり算は見たことがない漢字が出てきがちで、かけ算はUnicodeの範囲から外れてしまうのが残念…。でもとりあえず足し算ができるのでヨシ!としよう。
Pythonでいじる
Unicodeの表を眺めて探すのは人間のやることではない。Pythonにやらせよう。
Unicodeの値はPythonでは組み込み関数ord
で取得できる.
>>> ord('💩')
128169
# 16進表示で`U+1F4A9`と書くのが普通なので一応
>>> hex(ord("💩"))
'0x1f4a9'
そしてchr
でUnicode値を文字に変換する。
>>> chr(128169)
'💩'
このUnicode値で足し算をしてみる。
>>> chr(ord('💩') + 6)
'💯'
なるほど.💩+ 6 = 💯
!! 確かに「うんこ + 6 = 100点」、甥っ子すげえな!
Unicode物語
どうでもいいけど、💩の絵文字の近くは物語を感じる配置になってる。
Unicode | 表示 | 名称 | 物語 |
---|---|---|---|
1F4A1 | 💡 | ELECTRIC LIGHT BULB | バグを解決する方法をひらめいた💡 |
1F4A2 | 💢 | ANGER SYMBOL | と思ったが、ダメダメでおこ💢 |
1F4A3 | 💣 | BOMB | 勢いでPCを爆破💣 |
1F4A4 | 💤 | SLEEPING SYMBOL | 家に帰って寝るぜ💤 |
1F4A5 | 💥 | COLLISION SYMBOL | たたき起こされた💥 |
1F4A6 | 💦 | SPLASHING SWEAT SYMBOL | 急いで職場へ向かう💦 |
1F4A7 | 💧 | DROPLET | 泣いて謝る💧 |
1F4A8 | 💨 | DASH SYMBOL | 謝ったらスッキリして屁が出た💨 |
1F4A9 | 💩 | PILE OF POO | ついでに💩 |
1F4AA | 💪 | FLEXED BICEPS | 💪<力こそパワー。筋肉は裏切らない。 |
(※これで何かがわかることは決してないし、Unicodeを定めた人はこんなアホなことを考えていないと思う。)
個人的におもしろかった数式
一位: 💩 / 6 = 危
→ 排泄物の16.6%は危ない
おわり。
最後に
単純にUnicodeの値で四則演算をすると演算が閉じていないのが残念だけど、とりあえずうんこでも足し算ができることがわかりました!!
参考文献
図書館員のコンピュータ基礎講座
:Unicodeの表を参考にした
Let’s EMOJI
:絵文字の一覧表や検索が便利