授業科目名(和文)
[Course]
ソフトウェア演習Ⅱ
授業科目名(英文)
[Course]
Programming Exercise II
学部(研究科)
[Faculty]
情報工学部
学科(専攻)
[Department]
情報システム工学科
担当教員(○:代表教員)
[Principle Instructor(○)
and Instructors]
石井 裕  自室番号(2404)、電子メール(ishii**cse.oka-pu.ac.jp)
横川 智教  自室番号(2504)、電子メール(t-yokoga**cse.oka-pu.ac.jp)
天嵜 聡介  自室番号(2515)、電子メール(amasaki**cse.oka-pu.ac.jp)
但馬 康宏  自室番号(2604)、電子メール(tajima**cse.oka-pu.ac.jp)
目木 信太郎  自室番号(2614)、電子メール(meki**cse.oka-pu.ac.jp)
※利用の際は,** を @に置き換えてください
単位数
[Point(Credit)]
2単位
対象学生
[Eligible students]
2年次生
授業概略と目標
[Course description and Objects]
プログラムを作成し、コンピュータを用いて問題解決を図るには、問題を分析し、アルゴリズムやデータ構造を検討した上で、プログラミング言語を用いて問題の解法を記述する能力が要求される。この演習では、ソフトウェア演習Iで修得した基礎的なプログラム作成能力を基に、より高度なプログラム作成能力の養成を目標とする。
到達目標
[Learning Goal]
1. 解決すべき問題をより小さな問題へと分割し、単純な機能を持つ関数の組み合わせとしてその解法を実現する能力を習得する。
2. 線形リストや二分探索木などのデータ構造や、再帰呼出を用いたアルゴリズムをプログラムとして実装する能力を習得する。
履修上の注意
[Notes]
「プログラミング言語」「ソフトウェア演習I」「データ構造とアルゴリズム」を履修していること。演習には上記の講義で使用した教科書および参考書を持参すること。
授業計画とスケジュール
[Course schedule]
1. C言語の基礎に関する復習
2. if文,for文による制御構造を用いたプログラム作成の復習
3. ファイル入出力を用いたプログラムの作成
4. 多次元配列を用いたプログラム作成 (1)
5. 多次元配列を用いたプログラム作成 (2)
6. 関数を利用したプログラムの作成
7. 構造体とポインタによる線形リスト構造の実装 (1)
8. 構造体とポインタによる線形リスト構造の実装 (2)
9. 構造体とポインタによる二分探索木の実装
10. C言語による対戦型ゲームの実装
11. ゲーム木理論に基づく思考ルーチンの実装 (1)
12. ゲーム木理論に基づく思考ルーチンの実装 (2)
13. ランダム性をもつ対戦型ゲームの実装 (1)
14. ランダム性をもつ対戦型ゲームの実装 (2)
15. 最終課題
成績評価方法と基準
[Grading policy (Evaluation)]
各課題について課すレポートの評価を重視し、それ以外に演習時に行う小テスト、定期試験および中間・最終課題等の評価を総合的に判断する。
教科書
[Textbook]
教科書:「新C言語入門 シニア編」,林晴比古著,ソフトバンククリエイティブ
参考書:「定本Cプログラマのためのアルゴリズムとデータ構造」,近藤嘉雪,ソフトバンククリエイティブ
自主学習ガイド及び
キーワード
[Self learning]
毎回の演習時に行う課題について、復習を行うこと。
開講年度
[Year of the course]
27
備考 毎回演習時に課すレポートを提出しなかった者には単位を認定しない。また、演習には履修上の注意で挙げた講義で使用した教科書および参考書を持参すること。