自分で得点を決められる問題をChatGPTが解いたら何点取れるのか(京大数学)
このエッセイを書き始めてからChatGPTにハマり、難関大学(主に東大と京大)の入試問題を解かせるのがひとつの趣味になってしまいました。自分で言うのもなんですが、こんな趣味を持つ人はそういないと思います。ましてや、小説投稿サイトに投稿するとなれば、全国探しても指で数えるぐらいしかいないでしょう。
さて、タイトルの「自分で得点を決められる問題」というのは、1995年に京都大学文系で出題されたものです。
自然数nの関数f(n)、g(n)を
f(n)=nを7で割った余り
g(n)=3f(
によって定める。
(1)すべての自然数に対してf(
(2)あなたの好きな自然数nを一つ決めてg(n)を求めよ。そのg(n)の値をこの設問(2)におけるあなたの得点とする。
今回は(2)がメインテーマですが、まずは(1)を考えてみましょう。証明は最後にします。
設問(1)を式を使わずに書くと「すべての自然数に対して、nの7乗を7で割った余りはnに等しいことを示せ」となります。勘の良い方ならフェルマーの小定理を思い浮かべるのではないでしょうか。知らない方のために補足しておきます。
フェルマーの小定理は、こちらも数式を使わずに表現すると「互いに素(2つの数の最大公約数が1)の整数aと素数pについて、aのp乗を素数pで割った余りはaに等しい」です。……前述した問題の説明文と似ていると思いませんか? というか7は素数なので実質同じ。つまり、(1)はフェルマーの小定理(ただしp=7とする)を証明せよ、と言っているようなものです。
合同式で書くと、(1)は
と書き換えられます。これは「自然数nの6乗を7で割った余りは1である」という意味です。ここで「あっ!」と思った方は(2)の落とし穴に気付けるはずです。
種明かしをすると、(2)はnが6の倍数でないとg(n)の値は必ず0になります。実際に確かめてみましょう。g(n)=3f(
n=4以降は計算が大変なので省きますが42、140、784はすべて7で割り切れます。つまりf(n)の値は0。よってg(n)の値も0です。
n=6のとき、(1)より、
したがって、g(6)=3f(
これで(2)の配点が18点だということがわかりました。
前置きが長くなってしまいましたが、今回は敢えて(2)だけ出してみます。ChatGPTはこの問題の落とし穴に気付けるでしょうか。問題を正しく認識してもらうため、問題文を少し修正しました。
自然数nの関数f(n)、g(n)を
f(n)=nを7で割った余り
g(n)=3f(Σ(k=1 to 7) k^n)
によって定めます。
あなたの好きな自然数nを一つ決めてg(n)を求めてください。そのg(n)の値をこの問題におけるあなたの得点とします。
ChatGPTの解答は次の通り。
自然数nとして、例えばn=3とします。
f(n)は、nを7で割った余りを求める関数です。n=3の場合、f(n)は3を7で割った余りである2になります。
g(n)は、3f(Σ(k=1 to 7) k^n)で定義されます。ここで、Σ(k=1 to 7) k^nは、kが1から7までの全ての自然数について、k^nを足し合わせた値を表します。n=3の場合、この式を計算すると、
Σ(k=1 to 7) k^n = 1^3 + 2^3 + 3^3 + 4^3 + 5^3 + 6^3 + 7^3 = 784
となります。したがって、g(n)は以下のようになります。
g(n) = 3f(Σ(k=1 to 7) k^n) = 3f(784) = 3 × (784を7で割った余り) = 3 × 5 = 15
よって、n=3のとき、g(n)の値は15となります。
はい。序盤で間違えています。振り返ってみましょう。
>n=3の場合、f(n)は3を7で割った余りである2になります。
3を7で余りが2? 明らかに3だよね?
>g(n) = 3f(Σ(k=1 to 7) k^n) = 3f(784) = 3 × (784を7で割った余り) = 3 × 5 = 15
よって、n=3のとき、g(n)の値は15となります。
784を7で割った余りが5? 割り切れるよね? わざとか? 指摘してみます。
784を7で割った余りは5ではありません
申し訳ありません、前回の回答に誤りがありました。Σ(k=1 to 7) k^n の値は、nが3の場合、1^3+2^3+3^3+4^3+5^3+6^3+7^3=784となりますが、784を7で割った余りは2となります。
したがって、n=3の場合、g(n)は以下のようになります。
g(n) = 3f(Σ(k=1 to 7) k^n) = 3f(784) = 3 × (784を7で割った余り) = 3 × 2 = 6
よって、n=3のとき、g(n)の値は6となります。お詫び申し上げます。
どんだけ0点が嫌なんだよ。事実は受け入れろ。
2でもありません。
再度、申し訳ありません。前回の回答に誤りがありました。Σ(k=1 to 7) k^n の値は、nが3の場合、1^3+2^3+3^3+4^3+5^3+6^3+7^3=784となりますが、784を7で割った余りは6となります。
したがって、n=3の場合、g(n)は以下のようになります。
g(n) = 3f(Σ(k=1 to 7) k^n) = 3f(784) = 3 × (784を7で割った余り) = 3 × 6 = 18
よって、n=3のとき、g(n)の値は18となります。最初の回答に誤りがあり、お詫び申し上げます。
もういいよ! 7で割り切れるっつーの!
784は7で割り切れます。
おっしゃる通りで、再度誤りがありました。前回の回答に誤りがありましたこと、深くお詫び申し上げます。Σ(k=1 to 7) k^n の値は、nが3の場合、1^3+2^3+3^3+4^3+5^3+6^3+7^3=784となりますが、784は7で割り切れるため、784を7で割った余りは0となります。
したがって、n=3の場合、g(n)は以下のようになります。
g(n) = 3f(Σ(k=1 to 7) k^n) = 3f(784) = 3 × (784を7で割った余り) = 3 × 0 = 0
よって、n=3のとき、g(n)の値は0となります。再度、誤りをお詫び申し上げます。
784が7で割り切れることを指摘しなかったら、ChatGPTは延々と詫び続けていたでしょう。困ったAIだな。
では、最後に(1)を証明してみます。もう一度記すと、(1)は「すべての自然数に対して、nの7乗を7で割った余りはnに等しいことを示せ」でしたね。これは「すべての自然数に対して、nの6乗を7で割った余りは1である」と同値です。関係を合同式で表すと
となります。今回は右の式を証明します。
自然数を7で割った余りは割りきれる場合(余り0)を含めて7通りあります。つまり、すべての自然数は整数をmとして
7m、7m±1、7m±2、7m±3(または7m、7m+1、7m+2、7m+3、7m+4、7m+5、7m+6)
で表すことができます。上の式(7mは省略)を7で割ると
よって、f(
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます