注目の書籍

好評発売中!

iOS/Android/Windowsプログラミング

1冊で3大スマホOSの
基礎とプログラミング テクニックがわかる!
サンプルアプリも用意

ソフト開発

Rubyをめぐる冒険

日経ソフトウエア

失恋編 第2回 オブジェクト指向を利用して二度目のメールを復号する

2010/09/08
kikaineko
出典:日経ソフトウエア 2009年2月号  pp.118-125
(記事は執筆時の情報に基づいており、現在では異なる場合があります)

 街が赤と緑に包まれるころ,僕は彼女からの返信を待っていた。先日,彼女は僕に暗号のような(実際に暗号だったのだが)メールを送ってきた。内容は,

 「23.1 11.1 18.5 13.1 19.8.15 21」

という,一見すると意味不明な数字の羅列だった。それをなんとか解いてみると,そこには「別れましょう」という彼女からの一方的な宣告が現れたのだ。

 あれから僕は,彼女に向けて,「別れる理由が思い当たらない。それに僕は,別れたいとは思っていない」という主旨のメールを送った。

 メールを送ってから数日が過ぎたころ,彼女から返信が届いた。ある程度は予想していたが,今回もやはり意味不明なメールだ。

 17.47 41.11 43.43 43.2 67.2 23 83.2 31.2 71.71.11 31.73 7.2 67.2 23

 前回のメールの内容は,ローマ字をその文字順の数字に変換した簡単なものだった。今回の暗号は,それより複雑で,一筋縄では解けなさそうだ。僕はまた大学以来の友人Kに電話をすることにした。

僕:「予想はしていたけど,また彼女から暗号メールが届いたよ」
K :「そう,すてきだね」
僕:「すてきなことなんて何もないよ。きっとこの暗号の内容も『イタズラしてゴメンネ』なんていう温かい内容ではないと思う」
K :「すてきなことが二つになった。一つは,彼女が再度暗号メールを送信すると考えて,そして実際に彼女がそうしたこと。これは君が彼女を理解している証拠だ」
僕:「もう一つは?」
K :「君はその内容をハッピーなものと考えていない。それはきっと当たっているということ。やっぱり君は彼女を理解している」
僕:「やれやれ」

 こんな冗談を言われて「やれやれ」以外の返事があるだろうか。しかし,この暗号を解かなくてはならないだろう。暗号解読に取り掛かる前に,少しRubyの特徴に思いをめぐらせて,頭を整理してみよう。

>>Rubyではすべてをオブジェクトで扱う
次ページ以降はITpro会員(無料)の方のみお読みいただけます。
会員の方は、 ログインしてご覧ください。
まだ会員でない方は、ぜひ登録(無料)していただき、ITproの豊富なコンテンツをご覧ください。

この記事に対するfacebookコメント

nikkeibpITpro

読みましたか? 〜 未読記事をご紹介