先日ご紹介したエイト・クイーン。
実はこれ、プログラミングの題材としてよく登場します。
たとえば京都産業大学の山田先生のページ。 → バックトラック法
とてもきれいなコードなので印刷してみました。
う、、、コードがきれいだけど紙がシワシワですね。。。
失礼しました。
高校生の生徒さんと一緒に読んでみました。
コード・リーディングです。
えーと、 "!=" は "ノットイコール" だから、 変数 i の値と変数 j の値が一緒じゃないって意味。
つまりi列のクイーンと、j列のクイーンはノットイコール、同じ行ではない、って意味。
とかなんとか言いながら
ホワイトボードでチェスの盤面とクイーンのコマを書いて丁寧に説明していくと
なるほど!すごい!
コレ考えた人頭いいね!
いや、大学の先生ですからね。頭はぜったいいいと思います。
中高生はとてもうれしいリアクションをしながら納得、習得していってくれます。
ホントにカラカラに乾いたスポンジのようにどんどん吸収していきます。
バックトラック法のアルゴリズムの話だけでなくて
コーディングスタイルの話とかいろんな話ができて
とてもいい指導になったと自負しております。
山田先生の教材にとても感謝しております。
ありがとうございました。