1. トップ
  2. コラム一覧
  3. プログラマーから見たあやふやな世界

プログラマーから見たあやふやな世界

投稿日 : 2018.10.25  |  カテゴリー : 雑記

プログラマーが悩む
プログラマーの夫とその妻という設定でこんなジョークがあります。

A wife asks her husband, a programmer, “Could you please go shopping for me and buy one carton of milk, and if they have eggs, get6?”

A short time later the husband comes back with 6cartons of milk and his wife asks “Why did you buy 6 cartons of milk?”

He replies “They had eggs.”

英語原文


 

妻がプログラマーの夫におつかいを頼んだ。
「牛乳買ってきてくれない?あともし卵があったら6個。よろしくねー。」

しばらくして夫が買い物から帰ってきた。
牛乳を6つも抱えて。

妻は聞いた。
「なんで牛乳を6つも買ってきちゃったの!?」

夫「だって、卵があったから。」

意訳

もしかするとプログラミングを経験した事が無い人はこの話のミソが分からないかもしれませんね。
普通であれば「牛乳を1つと、卵があれば”卵を”6つ」買ってくるのが自然な行動と言えます。
実にたわいもないありふれた日常会話です。

ではなぜプログラム経験者であればクスっときてしまうのか。

プログラミングには
if 〜〜 else 〜〜 という書き方があります。
日本語でも全く同じで「もしであれば〜〜もしそうでなければ〜〜」です。

このジョークをプログラム風に書いてみると。。。

初期値↓;
牛乳の数 = 1;
卵の数 = 0;

もし(店に置いている卵の数が(1以上だったら)) {
   牛乳の数 = 6;
   卵の数 = 0;
} その他にもし(店に置いている卵の数が 0だったら ) {
   牛乳の数 = 1
   卵の数 = 0;
}

買い物をする((牛乳の数)と(卵の数)だけ);

と、こんな感じになるでしょうか。

店に卵が1個でもあったから牛乳を6つ買ってきた!
プログラムとしては非常に素直かつ当然の挙動です。

プログラムは行間が読めません。
所謂KYですが、書いてある事が全てなのです。

ちなみにこの書き方だと卵の数は変動しませんので、
夫はいずれにしても卵を買う事はなかったのでしょうね。

この記事を共有する
  • facebookでシェアする
  • ツイッターでつぶやく
  • LINEで送る
関連記事

よい決断力が身につく方法

判断力と決断力の違い 深く考えないと《判断》と《決断》は同じような意味にとらわれがちだが、全く意味が違う。 例えば買い物で『Aみかん』と『Bみかん』があり 『Aみかん』は品質が劣るが安い 『Bみかん』は品質は良いく高 ...

訪日旅行者が日本に来る前に「知っておく事」

1、居酒屋では注文した以上の請求がある 海外ではお酒が高いが、日本ではお酒が安く、居酒屋が多いことから、 外国人は日本にきたら色々な居酒屋で料理や雰囲気を楽しみたいと考えている旅行者は結構います。 ただそこで訪日旅行者をよ ...

意外!あんな現象やこんな現象にも正式名称がある!

お昼ご飯を食べた後にウトウト。我慢して我慢して、けれどやっぱりだめで遂にスヤスヤ。 とても気持ちよいですよね。 安眠もつかの間、階段から落ちる夢を見て体が「ビクッ!」となるあの現象、実は正式名称があるのです。 知らなくても全く ...

外国人が思う日本の「素晴らしい&日本の変なところ」

日本の素晴らしいところ ・「約束の時間をちゃんと守る」 約束の時刻をきちんと守る堅実な人間が多い。 ・「他人への思いやりに溢れている」 街の人の親切さや接客の礼儀正しさには驚き外国人観光客が多い。 アメリカ人留学生 ...

比較(暗)(描画モード)

比較(暗) 「Photoshop」や「After effect」にある描画モードについて毎週1つずつ解説していきます。 今回の「比較(暗)」は、基本色と合成色を比べて、より暗い方の色が結果色として選択されます。 より暗い方の色 ...

経営に必要な会計知識(その1)

経理と財務の違い 中小企業などの小規模組織では、経理と財務を経営者が一人で担っているケースをよく見られますが、本来は経理と財務は違う役割を果たしています。 まず「経理」とは経費や利益など、企業の中で日々にどれくらいのお金 ...

ロボットは人間の友達となり得るのか

IT技術が進んでいくにつれて、ネット世界の拡大やネットワーク技術の普遍化、 VR(バーチャルリアリティ)といった分野がめまぐるしく進歩していってますね。 それでも空を走る車や宇宙への旅、どこでもドアなんてのはまだまだ空想の世界で ...

“ものづくり”としてのプログラミング

子供の頃って何かを作るのに夢中になりませんでしたか? 私自身が子供だった頃を思い出しても、 自分だけの新しい何かを作るという行為が楽しかった事を覚えています。 道端に落ちている木の棒と瓦礫を組み合わせて武器を作る。 ...

意外と知らない「正月」のあれこれ

あけましておめでとうございます。 さて早速ではございますが「正月」のあれこれについて記述したいと思います。 「正月」の由来 まず、正月の語源は、様々な説があります。 仏教の修正会が1月にあったため「正すための月」であ ...

「ポケモン」の次は「ハリー・ポッター」!

ポケモンGOのNiantic社が、11月8日公式ブログで、「Harry Potter : Wizards Unite (邦題未定)」を開発中であることを発表しました。 映画や小説などでおなじみの「ハリー・ポッター」を題材にしたゲームで ...

Knocknote Education(ノックノートエドゥケーション)