21122110

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

2年前学期水3

プログラミング通論

Programming

古賀 久志

単位区分

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

関連Webサイト

google classroomを使用する。クラスコード: rhtwfck4

主題および達成目標

(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 回 探索 線型探索, 2分探索
第 15 回 進んだ話題

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

授業時間外の学習

講義前に、講義資料を公開するので, 予習に努めること.

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

講義後に課す小テストやレポート課題は, 期日までに回答すること.

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

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

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

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

(b) 評価基準: 以下の到達レベルをもって合格の最低基準とする.
(1) 再帰呼出しを用いたプログラムを説明することができ, それらを用いた簡単なプログラムを書くことができる.

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

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

(4) プログラムの変数が実行時にどう変化するかを、ソースコードを読むだけで把握できる。

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

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

学生へのメッセージ

特にポインタを使ったデータ構造, アルゴリズムが要点であるので, 充分予習, 復習をすること. 遅刻せず出席することが基本である.

その

再履修者は, 昨年度と同じ担当教員が開講するクラスを受講すること.

ただし, 他の講義と重複する等の理由で他クラスに移動したい再履修者は, 移動希望先
クラスの担当教員にメールで理由を説明し, 許可を得てください.
そして、移動希望先教員の許可が得た後で、元々の担当教員に移動の旨を連絡してください.

キーワード

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