シラバス参照 |
講義概要/Course Information |
科目基礎情報/General Information |
授業科目名 /Course title (Japanese) |
情報処理演習第二 | ||
---|---|---|---|
英文授業科目名 /Course title (English) |
Information Processing ExerciseⅡ | ||
科目番号 /Code |
FGN401a FGN401b FGN401c FGN401d FGN401e FGN401f FGN401g FGN401h FGN401i FGN401j FGN401k FGN401m FGN401n FGN401p | ||
開講年度 /Academic year |
2020年度 | 開講年次 /Year offered |
2/3/4 |
開講学期 /Semester(s) offered |
後学期 | 開講コース・課程 /Faculty offering the course |
情報理工学域 |
授業の方法 /Teaching method |
演習 | 単位数 /Credits |
2 |
科目区分 /Category |
専門科目 | ||
開講学科・専攻 /Cluster/Department |
情報理工学域 | ||
担当教員名 /Lecturer(s) |
中井 日佐司 | ||
居室 /Office |
E2-211 | ||
公開E-Mail |
nakai@fedu.uec.ac.jp | ||
授業関連Webページ /Course website |
http://www.edu.cc.uec.ac.jp/fedu/IPEX2 | ||
更新日 /Last updated |
2020/02/28 15:25:27 | 更新状況 /Update status |
公開中 /now open to public |
講義情報/Course Description |
主題および 達成目標 /Topic and goals |
コンピュータの進歩によってプログラムに対する価値が変り始めました。以前は、「より速く実行でき、より小さいメモリで動く」、つまり、コンピュータに負荷をかけないより軽いプログラムを書くことが技能として重要でした。近年では、CPUの高速化、メモリの大容量化によってこの軽さよりも、「より分かりやすく、再利用の可能な」人間が利用する情報としてプログラムが評価されるようになりました。 この授業では、以上のような事情をふまえて、(1)情報処理演習第一で収得したプログラミングに関する知識を深め活用するすること、(2) コンピュータのためではなく、他の人に自分のアイディアを伝える表現としてのプログラム能力を高めること、を学びます。なお、プログラムに用いる言語はC言語です。 また後半のプログラム制作では、仕様の策定、プロトタイププログラミング、テスト、デバッグ、リリースという一連の作業を体験し、問題の分析と解決能力を高めることを目標にしています。 |
---|---|
前もって履修 しておくべき科目 /Prerequisites |
情報処理演習第一、またはこれに相当する授業。 |
前もって履修しておくこ とが望ましい科目 /Recommended prerequisites and preparation |
なし。 |
教科書等 /Course textbooks and materials |
なし。配布するプリントをつかって授業を行う。 参考書 [1] Steve Oualline 「C 実践プログラミング」第三版(オライリー・ジャパン) [2] Neil Matthew and Richard Stones 「Linux プログラミング」(SOFT BANK Publishing) その他、自分にあったC言語の本(授業で利用したもの、または、母国語で書かれたものなど)を辞書代わりに手元においておくことをお勧めします。 |
授業内容と その進め方 /Course outline and weekly schedule |
授業の前半は講義、後半は講義のテーマに関する演習を行います。講義の内容は以下の通りです: リストプログラムの作成 第一回 「ポインタの応用」 関数を指すポインタ---関数=データ(?) 第二回「構造体とポインタ」構造体を指すポインタ 第三回「リンクドリスト」無限につながるリスト形式 第四回「ファァイル入出力(1)」ライブラリをもちいたファイル入出力 第五回「ファァイル入出力(2)」システムコールを用いたファイル入出力 第六回「リストプログラム作成のの実例(1)」データ構造の定義 第七回「リストプログラムの作成の実例(2)」機能の追加---ソート、データ削除 第八回「リストプログラムの作成の実例(3)」プログラム実行時のオプション設定 第九回「リストプログラムの作成の実例(4)」プログラムのテスト方法、デバッグの方法 プログラム制作実習 第十回「プログラム制作の要件」共有できるプログラムを制作するための要件、予備調査、候補選定 第十一回「予備仕様書作成」候補の中から制作するプログラム決定、予備仕様書作成 第十二回「コードアウトライン作成」機能に名前を付ける、プロトタイプ(機能限定プログラム)作成 第十三回「機能を関数に変換する」 第十四回「プログラムの動作テスト」コンパイル、予備仕様書に基づいたテスト 第十五回「制作発表会」 授業の進め方 [一〜十回目] 前半に講義を行い,後半に講義の内容に関連する課題を行ってもらいます [十一〜十四回目] 最終課題として11月下旬から各人でプログラム制作を行ない、その結果を最終回に発表してもらいます。 [十五回目] プログラム制作発表.一人10分程度で自作したプログラムに関して受講者が発表する. |
実務経験を活かした 授業内容 (実務経験内容も含む) /Course content utilizing practical experience |
|
授業時間外の学習 (予習・復習等) /Preparation and review outside class |
プログラミング演習科目に関する復習に重点を置くこと. |
成績評価方法 および評価基準 (最低達成基準を含む) /Evaluation and grading |
[評価方法] 毎回の課題60%+最終課題40%で評価します。 [最低達成基準]「構造体をさすポインタ」を理解し、それを使ったリストプログラムを指示に従って変更できる(かならずしも動作する必要はない)ことです。 なお、技巧の限りを尽くし、構成のない難解なプログラムよりも、単純な手法を使った構成がはっきりしているプログラムをこの授業ではより良く評価します。また、結果として課題のプログラムが動作しなくても、動作しない原因の分析や論理的な推測を報告することによって評価が高くなります。 |
オフィスアワー: 授業相談 /Office hours |
木・金曜日4,5限.他の時間でも,都合がつけば相談に応じます. |
学生へのメッセージ /Message for students |
プログラムは、話を聞いているだけでは「絶対に」作る事はできません。手 と頭を使って、知識とともに、プログラミングの「基礎体力」も鍛えましょう。 |
その他 /Others |
なし。 |
キーワード /Keyword(s) |
プログラム、C言語、構造体、ポインタ、リスト |