|
授業の目標
|
|
|
プログラミングIでは十分に学習できなかった高度なプログラミング技能を習得する。特に、配列の高度利用 、ポインタの高度利用、構造体の高度利用、および動的なメモリ管理について習熟し、動的なデータ構造と 高度なアルゴリズムの実装について理解できるようになる。
|
|
|
|
到達目標
|
|
(1) 配列、構造体などの基本的なデータ構造を用いてプログラミングできる。 (2) ポインタを用いたプログラミングができる。 (3) 動的なデータ構造を用いたプログラミングできる。 (4) 再帰テクニックを含む高度なアルゴリズムの実装ができる。
|
|
|
|
身につく能力
|
|
<全学ディプロマ・ポリシー>
○【知識・理解・技術】 1.各専門分野の知識・技術を習得し、活用する力を身につけている
【教養・基礎的能力】 2.幅広い教養と、外国語能力、情報活用能力、コミュニケーション能力などの基礎的能力を身につけている
【態度・志向性】 3.多様な価値観を有する人々と倫理観・責任感をもって協働することができる
【態度・志向性】 4.時代の変化に主体的に対応するため継続的に学び、自律的に行動することができる
【問題発見・解決能力】 5.専門の知識・技術及び基礎的能力を統合し活用して、問題を発見し解決する能力を身につけている
【グローカル・創造的思考力】 6.地域的・国際的視点をあわせもち、また、新たな価値を想像する力を身につけている
|
|
|
授業の概要
|
|
|
C言語での高度なプログラミング技術について授業・演習を実施する。特に、ポインタ、構造体の高度な利用 法に基づいた動的なデータ構造の実装、関数の高度な利用法に基づいた高度なアルゴリズム実装について詳 しく授業する。プログラミングIでの学習内容を基礎として、情報系に必要なプログラミング技術を習得す る。
|
|
|
|
授業の計画
|
|
第1週 プログラミングIの復習 第2週 配列応用1(多次元配列) 第3週 配列応用2(動的メモリ管理と動的配列) 第4週 構造体応用1(ユーザ定義の型と構造体) 第5週 構造体応用2(構造体と関数) 第6週 ポインタ応用1(ポインタと配列) 第7週 ポインタ応用2(ファイルポインタ) 第8週 ポンタ応用3(関数へのポインタ) 第9週 データ構造1(連結リスト) 第10週 データ構造2(スタック、キュー) 第11週 データ構造3(2重連結リスト(デク)) 第12週 データ構造4(2分探索木) 第13週 データ構造5(ヒープ) 第14週 総合演習I(プログラミング) 第15週 総合演習II(プログラミング)
|
|
|
|
授業時間外学修の指示
|
|
課題は、1-13回までの基本課題と、セメスター課題の14個ある。 基本課題の作成期間は1週間とし、翌週の授業開始前までにプログラムを完成させる。 セメスター課題は、セメスターを通じて行う課題であり、セメスター課題の作成期間は授業期間全てである 。 適宜、必要な技術を駆使してプログラム作成に取り組むこと。
|
|
|
|
成績評価の方法
|
|
1-13回までの各回は基本課題を行う。 14,15回では、セメスター課題を行う。 基本課題50%,セメスター課題50%で評価する。
|
|
|
|
テキスト・参考書等
|
|
参考書: 今泉貴史著「プログラミングに活かすデータ構造とアルゴリズムの基礎知識」、ASCII,2700円+税、 ISBN:4756144527 MMGames著「苦しんで覚えるC言語」、秀和システム、 2,200円+税、 ISBN-10 : 4798030147
|
|
|
|
履修上の留意点
|
|
|
【manabaの利用法】課題提出と資料配布に用いる
|
|
|
|
資料
|
|
|
|
|
備考
|
|
|