アルゴリズムとプログラミング

担当:伊藤

1.「この授業科目の内容とねらい」(Content and Aim(s) of this Class)

プログラムは、仕事などの一連の作業を自動化させるために利用する以外に、自分の考えを表現する方法の一つとしても利用することができます。この科目は、基本的なアルゴリズムやデータ構造の理解を元に、自分の考えを具体化するために処理の流れを考えたり、扱うデータの構造をきめたりといったシステム設計ができる力の育成と、設計したものを実際に開発する活動を通して、プログラミング能力を高めます。

2.「授業計画と授業方法」(Teaching Plan for the Year and Teaching Procedure in a Class)

授業計画は以下の通りです。前半は講義が中心で、後半は演習が中心でおこないます。

第1週 よいプログラムとは
第2週 プログラムの構造設計手法
 ・構造化プログラミングの目的と効果
 ・基本制御構造
第3〜4週 アルゴリズムとデータ構造1
 ・配列構造、リスト構造、二分木構造
 ・一覧表示、探索、挿入、削除アルゴリズム
第5週 アルゴリズムとデータ構造2
 ・スタック構造
 ・「ハノイの塔」のアルゴリズム
第6週 数値計算とアルゴリズム
 ・二分法、ニュートン法
第7週 文字列処理とアルゴリズム
 ・文字数のカウント
 ・文字列の圧縮、解凍
 ・文字列の探索
第8〜9週 様々なアルゴリズム
 ・ネットワークの最短路アルゴリズム
 ・割当問題アルゴリズム
第10週 アルゴリズムの正当性
 ・品質保証の考え方
 ・正当性検証の方法
第11〜12週 システム開発の工程
 ・基本計画と要求定義
 ・外部設計と内部設計
 ・機能分割・構造化
第13〜14週 プログラミングの道具と環境
第15〜16週 テスト手法とデバッグ手法
第17週 様々なインターフェイスデザイン
第18〜19週 システム設計
第20週 設計発表会
第21〜24週 作品制作(1)
第25週 途中経過発表会
第26〜28週 作品制作(2)
第29週 作品発表会
第30週 まとめ

3.「教科書」(Textbook(s))

特にありません。必要に応じてプリント類を配布します。

4.「参考文献」(Reference Book(s))

システムづくりの人間学、G.M.ワインバーグ著 木村泉訳、共立出版
ASP実践プログラミング入門、生形洋一著、技術評論社

5.「テスト計画と評価方法」(Testing Plan and Evaluation Factors)

レポート、作品、自己評価等を総合して評価します。

6.「その他特に学生に伝えておきたい事項」(Some Words You Want to Give the Students Beforehand)

課外での演習を必要とします。特に実際にソフトウェアの開発のための時間の確保が必要です。