見出し画像

久々にChatGPT-4を使った

お疲れ様です。Y研究員です。夏休みですね。

Twitter(X)を眺めていたらChatGPTの質が低下したと見かけました。もとから運用コスが高いと言われていたので、調整したのかもしれません。なので、久しぶりにPascalを使た古典的プログラムをCに変換させてみました。

お題は「エイト・クイーン」です。チェスでクイーンは8方向にいくらでも動かせます。このクイーン8個をチェス盤に配置して、お互いが取られない位置に置く課題です。

プログラムでは再帰で解を探します。早速Wirthの古典的プログラムを変換させたところ、C言語では間違いなく動きました。

追加の話題として、再帰アルゴリズムはアルゴリズムの勉強には必ず出てきます。しかし実際に製品に使うと思わぬ不具合を起こすので推奨されていないので注意が必要です。このブログでも少し前にScrathでフォーク爆弾を簡単に作りました。

あとは、優れたプログラマはコードを眺めるのではなく、背後にあるデータ構造に注意を払うという言葉にも触れました。「写経」でプログラムを書き写すのも良いですが、課題に対してどのようなデータ構造を用いて問題解決をするのかに注目して行きたいと思います。

さて古典的教科書の次のお代は「安定結婚問題」です。両者の希望になるべく応えるような組み合わせを再帰で探索します。

写真は全くひねりのないチェス盤です。そういえば人間をコマに見立てて大きな将棋盤を作り、プロ棋士が対戦するお祭りがありましたね。人間将棋と言って山形県の天童でやってるらしいです。

それではまた!


無料のプログラミングクラブCoderDojoを運営するにあたり寄付を受け付けています。お金は会場費・Wifiの費用・教科書に使用します。