レポート公評

提出されたレポートの内容を見て、問題となったことを列挙します。

  1. レポートの課題を良く読めてないのではないか? 実行例を作る際のデータに誤りがある。
    レポートの課題の通りにレポートができてない人が多くいました。 但し、「標準入出力が分かってないが同等の機能がある」など大目に見れるところは見ました。
  2. レポートの書き方を読んでいない、考察がない
    提出されたレポートの中には、書式の指定があるにも関わらずプログラムと出力だけを出したり、表紙がなかったりしたものもありました。
  3. C, C++, Java のどれかで書く
    perl など一行( print sort <>; )で書けるプログラミング言語で提出してきた人もいます。 しかし、それは Windows のコマンド sort.exe を使ってレポートを書くのと同じようなもので、「データ構造とアルゴリズム」という講義のレポートとしては 意味がありません。
  4. レベルの低いアルゴリズムを使用している
    バブルソートや挿入法など、一つのデータの位置を決めるのにデータ全体を 読むようなアルゴリズムを使用したプログラムを提出してきた人がいます。 これらの並べ替えは、計算速度が遅いため、本講義では取り上げなかったものです。 必ず講義で紹介したような高速な並べ替え法を使って下さい。
  5. 仕様を満たしてない
    入力に制限がない場合、プログラム作成者が勝手に制限を設けてはいけません。 今回は、行長は厳密には見ませんでしたが、行数に制限を設けている場合は不可にしました。

    また、入力されたものをそのまま出力してから、処理をしているプログラムがありました。 今回は大目に見ましたが、仕様を正確に満たしたプログラムを書くようにして下さい。

  6. 無駄な部分がある
    今回は特に減点の対象にはしませんでしたが、レポートに関係ないものがあると 読みにくいです。 C 言語を使用してレポートを作成しているのに、 C++ や Java など本文に関係ない 記述があったり、 レポート本文で使用していないソート法に関する解説があると、 無駄に厚くて読みづらいです。 次回から話題に一貫性のないレポートは減点の対象にします。
  7. プログラムが変
    C++ なのに stdio.h を読んだり、 iostream の代わりに iostream.h を読んだりしている (C++ でどうしても printf などを使いたい場合は stdio.h の代わりに cstdio を読む)。 プログラムの途中に string add(char buf); などという関数のプロトタイプが置いてあったりする。

坂本直志 <[email protected]>
東京電機大学工学部情報通信工学科