21122111

コンピュータ工学COM303a  COM303b  COM303c  COM303d  COM303e 

2年前学期火3

プログラミング通論

Programming

橋本 直己

単位区分

単位数: 2単位
必修
課程・類・プログラム
種別
先端工学基礎課程

関連Webサイト

WebClass & google classroom (講義情報を参照)

主題および達成目標

(a) 主題: プログラミングの初歩は学習したという前提で, 再帰的手続き, データ構造の初歩, および, 基本的アルゴリズムについて学習する.

(b) 達成目標: 再帰的手続き, 基本的なデータ構造, 基本的なアルゴリズムを理解し, それらを用いた C 言語のプログラムを読むこと, 書くことができる.

前もって履修しておくべき科目

コンピュータリテラシー, 基礎プログラミングおよび演習

前もって履修しておくことが望ましい科目

なし

教科書等

参考書は以下の通り.
R. セジウィック著, 野下ら訳: アルゴリズムC 第1巻=基礎・整列, 近代科学社 1996.

この本は少し古く, また内容は最新の書籍でもあまり変わっていないので, 自分が理解しやすい専門書を選択してもよいでしょう. 講義内容を扱っているかどうかで書籍を選んでください.

授業内容とその進め方

授業内容は以下の通りである.

第 1 回 C言語の基本機能の復習
第 2 回 基本的データ型 (1) ポインタ
第 3 回 基本的データ型 (2) スタック, キュー, デク
第 4 回 再帰呼出し (1) 関数と引数渡しの復習, 再帰の概念
第 5 回 再帰呼出し (2) 分割統治法, 実行の仕方(スタック・配列表現)
第 6 回 再帰呼出し (3) 再帰呼出しの除去
第 7 回 復習および中間試験
第 8 回 リスト構造 (1) リストの定義, 基本操作
第 9 回 リスト構造 (2) リストの応用
第 10 回 リスト構造 (3) 抽象データ型としてのリスト
第 11 回 整列 (1) 基本整列法(選択ソート, 挿入ソート, バブルソート)
第 12 回 整列 (2) 高速手法(シェルソート, クイックソート)
第 13 回 整列 (3) 高速手法(ヒープソート, 分布数え上げソート)
第 14 回 整列 (4) 高速手法(マージソート), 探索
第 15 回 進んだ話題(ハッシュ法, 木構造探索, デバッガ)

講義に対する演習は情報領域演習第二 (Q演習) (必修)にておこなう.

-----------------------------------------------------------------------

■小テストの実施:WebClassを使用
(「遠隔授業に関する情報」を参照)

■講義動画/小テスト解説動画等の公開:Google Classroomを使用
(「遠隔授業に関する情報」を参照)

授業時間外の学習

講義後に, 次の日曜日までに小テストに回答すること. また, 翌週公開される小テスト解説動画をみて自己採点し, 講義内容を復習すること. 講義の復習や小テストの回答には, オンデマンド用講義動画を利用すること.

講義資料と共にサンプルプログラムを公開するので, 必ずコンパイルして実行し, 動作を確認すること.
また、サンプルプログラムを活用して、理解を深めるための簡単な改良を施したり, 疑問に感じる部分の動作確認を行ったりすること.

成績評価方法および評価基準

(a) 評価方法: 中間試験, 期末試験, 課題, レポートの結果から, 次のように総合評価する.

成績評価=( 期末試験の評価点 ×60%)+
((中間試験, 複数回の課題・レポート等の評価点)×40%)

また, 未提出の課題やレポートがある場合は大幅な減点対象となるので注意すること.

(b) 評価基準: 以下の到達レベルをもって合格の最低基準とする.

(1) 再帰呼出しを用いたプログラムを説明することができ, それらを用いた簡単なプログラムを書くことができる.

(2) スタック, キュー, リスト構造について説明ができ, それらを用いたプログラムを説明することができる. また, それらを用いて基本的なプログラムを書くことができる.

(3) 整列, 探索のアルゴリズムを説明することができ, それらを用いたプログラムを説明することができる. また, それらを用いて基本的なプログラムを書くことができる.

オフィスアワー・授業相談

事前にメール等でアポイントをとること.

学生へのメッセージ

特にポインタを使ったデータ構造や, 各種ソートアルゴリズムが要点となるので, 充分な予習及び復習をすること. 期日を守って課題を提出し, 遅刻せずに出席することが基本である.

その

再履修者のクラスは、原則として昨年度と同一クラスとします.

ただし, 他の講義と重複する等の理由で水曜開講の1クラスに移動したい再履修者は,
移動希望先クラスの担当教員にメールで理由の説明し, 許可を得てください.
その上で、クラスを変更することを橋本にも連絡してください.

キーワード

キュー
スタック
デク
ブロック構造
ポインタ
マージ
リスト
再帰呼出し
引数機構
探索
整列
最終変更日時: 2025/03/20 17:56:43