chatGTPをやってみた

 先日の投稿で30000より大きい最小の整数について書いたが、これをプログラムを書いて確認しようと思った。そうだ、AIにPythonのプログラムを書いてもらえば手っ取り早い!と思ってPythonの環境をインストールしてみた。というか、アンドロイドアプリにあるのだから素晴らしい。

で、chatGPTにログインして、そういえば素数を求めるくらいならAIにもできるだろうと思って聞いてみた。そしたら、とてもポンコツだった。

私)30000より大きい最小の素数を教えてください

AI)30000より大きい最小の素数は、32941です。

おいおい、もう違う。

私)30011は素数ですか?

AI)30011は素数です。

ならさっきのは間違いじゃないか、とか思うが、もう一度同じことを聞いてみよう。

私)30000より大きくて、もっとも小さい素数を教えてください。

AI)30000より大きくて、もっとも小さい素数は30001です。

答えが変わった…。ってか、30001は素数じゃないってことを知らないのかな?

私)30001の約数を教えてください。

AI)30001は、1と自分自身である30001以外の約数を持ちません。つまり、30001は素数であるため、その約数は1と30001の2つだけです。

自信満々に返された…

私)30001を19で割るといくらになりますか? 

AI)30001を19で割った場合、商は1578で余りは19になります。つまり、次のように表せます。

30001 ÷ 19 = 1578 ... 19

別の問題が発生…

私)19で割った余りが19になることはありますか?

AI)19で割った余りが19になることはありません。19で割った余りは、必ず0以上18以下の整数になります。19で割った余りが19になるためには、19で割る数が19の倍数である必要がありますが、この場合は商が求まりますので、余りは0になります。

わけわからなくなってきた…

私)では、30001を19で割ってください。

AI)30001を19で割った場合、商は1578で余りは19になります。つまり、次のように表せます。

30001 ÷ 19 = 1578 ... 19

私)その式はおかしいですね。なぜなら19で割った余りが19になっているからです。

AI)申し訳ありません、先に誤った情報を提供してしまいました。ご指摘ありがとうございます。

30001を19で割った場合、商は1578で余りは13になります。つまり、次のように表せます。

30001 ÷ 19 = 1578 ... 13

なんか適当に答えてない?って思ってしまう… 

私)その式もおかしいですね。

19×1579を計算してみてください。

AI)申し訳ありません。先に提供した情報が誤っていたようです。

19で割った余りが19になるわけがありませんし、13も正しくありませんでした。

30001を19で割ると、商は1578で余りは9になります。

つまり、次のように表せます。

30001 ÷ 19 = 1578 ... 9

また、19×1578+9=30001も成り立ちます。

と、このあとも色々と聞いてみたが、AIも困っているようだ。素数であるかどうかが判断できない原因は色々考えられるが、余りの出る割り算を正確に計算できないことだろうかと思う。というか、もしかしたら計算結果を覚えているだけで、計算はしていないのかもしれない。

それにしても日本語はちゃんと伝わっているようだ。恐ろしく進化したものだとは思う。

このブログの人気の投稿

見るも因縁、聞くも因縁、世話取りするはなおのこと

成ってくるのが天の理

Inkscapeで印刷すると画質が落ちる