「プログラマの夫」をChatGPTで聞いてみたら

noteには今年は初めての投稿になります。

皆さんは「プログラマの夫」というジョークをご存知でしょうか?

プログラマの夫に買い物を頼む妻。
妻「牛乳を1つ買ってきて。卵があったら6つお願い。」
すると夫が牛乳を6パック買ってきた。
妻「なんで6パックも買ってきたの?」
夫「だって卵があったから...」

この元記事「「プログラマにお使いを頼んだら……」ジョークが海外の掲示板で人気」を見た2011年2月11日に、Twtterで下記のように呟きました。これが日本で初めての「プログラマの夫」のツイートになったわけです。

当時も今でも自分のTwitterの使い方として、TVやネットで気になったことをメモ代わりに投稿しています。140文字内で上手く収まったこともあって、投稿した途端に反応が結構ありました。ただ2011年当時なので鳴り止まない程ではなかったです。それでも12年経った今でも数ヶ月に1回くらいはリツイートがきます。
東日本大震災(2011/3/11)の少し前なんですよね、LINEがまだ無い時代です。

Chat GPTに聞いてみた

Facebokkをのぞいていたら、「プログラマの夫」を今話題のChat GPTでをPythonで組んでいる方がおりました。筆者もやってみました。

「買い物にいって牛乳を1つ買ってきてちょうだい。卵があったら6つお願い」というPythonプログラムを書いて下さい。

この要求を満たすPythonプログラムを書いています:

def buy_items(milk_count, egg_count=0):
    print("買い物に行って牛乳を" + str(milk_count) + "つ買ってきてください。")
    if egg_count > 0:
        print("卵があったら" + str(egg_count) + "個お願いします。")

buy_items(1, 6)

このプログラムでは、「買い物にいって牛乳を1つ買ってきてちょうだい。卵があったら6つお願い」という要求を満たす関数 buy_items を定義しています。この関数は牛乳の数(引数 milk_count)を必須として、卵の数(引数 egg_count)はオプションです。関数内では牛乳の数と卵の数を表示するためのテキストを作成して、卵の数が0より大きい場合には卵に関するテキストも表示します。最後に、関数 buy_items を呼び出して、牛乳を1つ、卵を6つ買うように指示しています。

引数を使わないでください。

この要求を満たすPythonプログラムを書いています:

print("買い物に行って牛乳を1つ買ってきてください。")
print("卵があったら6個お願いします。")

このプログラムでは、牛乳の数と卵の数を固定値として直接表示することで、「買い物にいって牛乳を1つ買ってきてちょうだい。卵があったら6つお願い」という要求を満たしています。

固定値はやめて下さい。If文を入れて下さい。

この要求を満たすPythonプログラムを書いています:

eggs = input("卵がありますか? (はい/いいえ)")
if eggs == "はい":
    print("買い物に行って牛乳を1つ買ってきてください。")
    print("卵があったら6個お願いします。")
else:
    print("買い物に行って牛乳を1つ買ってきてください。")

このプログラムでは、卵があるかどうかを入力するための input 関数を使用して、ユーザーからの入力を受け付けます。入力が「はい」の場合、「買い物にいって牛乳を1つ買ってきてちょうだい。卵があったら6つお願い」というテキストを表示します。入力が「いいえ」の場合は、牛乳のみを買うように指示するテキストを表示します。

何を6個購入するのですか? 卵ですか、牛乳ですか

申し訳ございます、前のアドバイスに誤りがありました。「買い物にいって牛乳を1つ買ってきてちょうだい。卵があったら6つお願い」という文章からは、卵を6個購入することが求められています。

以下が修正されたプログラムです:

eggs = input("卵がありますか? (はい/いいえ)")
if eggs == "はい":
    print("買い物に行って牛乳を1つ買ってきてください。")
    print("卵があったら6個買ってきてください。")
else:
    print("買い物に行って牛乳を1つ買ってきてください。")


修正されたと言いながら、前回と変わりませんでした。
更に質問をしたのですが応答が返ってこなかったので、ここでやめました。

こうやって、追求していきながらプログラムを組ませることが出来るわけですね。面白い!

ではでは

この記事が気に入ったらサポートをしてみませんか?