2013年12月6日金曜日

2013/12/05(木) 冬季中間発表会の続き、授業実施(da2)

午後から。

●卒業研究冬季中間発表会の続き
Kくんの中間発表を聴いてコメントした。特に優しくはしなかった。
一部始終を録音した。録音データは、終了後すぐにパスワード付き圧縮をかけてファイルサーバに放り込んだ。

●物品購入
伝票のコピーをとって、原本は事務室に提出した。

●授業実施(da2)
・da2 実施
4限目・5限目に第11回を実施した。今回のテーマは整列アルゴリズムのうちO(n^2)ソートであり、バブルソート、選択ソート、挿入ソートを取り上げた。

4限目には、まず前回のハッシュ法について補足説明したのち、小テストを実施した。答案はすぐに回収し、解説はしなかったが、正解を見せるだけは見せた。
次に、本題のソートについて説明した。3クラス共通のスライド資料と補足スライド資料に沿って講義を行い、途中にあった演習問題については途中まで解説した。ちょうど4限目終了時刻に一通りのことを終えることができた。

今回は新しい試みとして、次のようなことをした。
1) 講義中のネット使用を禁止した。先に授業用Webページから講義資料をダウンロードさせ、完了し次第LANケーブルをしまわせるようにした。寝る学生がいつもより多かったような気がする。
全員がダウンロードを完了するまでに思ったより時間がかかったので、次からは授業開始までにダウンロードを済ませておくよう指示を出すことにする。
2) いつもは先に補足スライド資料、次に3クラス共通のスライド資料の順で使っていたが、今回は話題ごとに資料を切り替えながら使った。事前に心配したほど混乱はなかったようである。

5限目には、いつものようにミニッツペーパーの記入と演習をさせた。終了時刻までに全員が解答を終えた。

授業終了後にミニッツペーパーを見たところ、出席者が40名弱のうち、授業内容を理解したという回答数が初めて30を超えた(ただし、あくまでも受講生の自己評価)。また、時間配分が適切であったという回答も初めて100%になった。内容がとっつきやすかったということもあるのであろうが、とにかく今回は数値を見る限りではいつもよりうまくいったように思える。

●授業処理(da2)
・da2 処理

小テスト答案、小テストおよび演習の得点、K'sLifeの出席登録データ、ミニッツペーパーをいつも通り処理した。得点データは成績確認システムに載せた。注釈つきスライド資料のPDF版、小テスト正解のPDF版を授業用Webページに載せた。

●授業準備(da2)
・da2 準備
授業中には、今回説明した三つの整列アルゴリズムはいずれも遅いことや、バブルソートは現実にはまず使われないこと、選択ソートは安定ではないこと、三つのうち強いてどれかを使うとすれば比較的速い挿入ソートだろうというような話はしたのであるが、ミニッツペーパーにはやはり「使い分けがわからない」などと書かれていた(他に質問を思いつかなかったのであろう)。

受講生に整列アルゴリズムの速さの違いを実感として解ってもらうため、かつてda3用に開発したプログラムSortTestをよみがえらせることにした。このプログラムはDelphi 6 Personalで開発したものであり、幸い今でも開発環境は確保してあるので、一つだけ未実装であった選択ソートを実装する作業はわりかしすぐに終わった。折れ線グラフを描画するあたりのロジックがどうなっているかすっかり忘れていたので、むしろそちらで手間を喰った。
完成したSortTestを何度か実行し、折れ線グラフを表示した状態のウインドウ画像をキャプチャして保存した。

なお、Windows Server 2003 R2上でも一応はDelphi 6のビルドを実行できたが、プロジェクトのオプションをいじろうとするとアクセス違反が生じてうまくいかなかった。アイコンの処理もちょっとおかしいように見える。そのへんのシステムDLLか何かとDelphi 6との相性が悪いのではないかと推測している。

0 件のコメント:

コメントを投稿