シラバス参照

講義概要/Course Information
2025/04/25 現在

科目基礎情報/General Information
授業科目名
/Course title (Japanese)
プログラミング通論
英文授業科目名
/Course title (English)
Programming
科目番号
/Code
COM303a COM303b COM303c COM303d COM303e
開講年度
/Academic year
2025年度 開講年次
/Year offered
2
開講学期
/Semester(s) offered
前学期 開講コース・課程
/Faculty offering the course
情報理工学域
授業の方法
/Teaching method
講義 単位数
/Credits
2
科目区分
/Category
専門科目
開講類・専攻
/Cluster/Department
Ⅰ類
担当教員名
/Lecturer(s)
橋本 直己
居室
/Office
西9-811
公開E-mail
/e-mail
hashimoto@uec.ac.jp
授業関連Webページ
/Course website
WebClass & google classroom (講義情報を参照)
更新日
/Last update
2025/03/20 08:56:43 更新状況
/Update status
公開中
/now open to public
講義情報/Course Description
主題および
達成目標(2,000文字以内)
/Themes and goals(up to 2,000 letters)
(a) 主題: プログラミングの初歩は学習したという前提で,再帰的手続き,データ構造の初歩,および,基本的アルゴリズムについて学習する.

(b) 達成目標: 再帰的手続き,基本的なデータ構造,基本的なアルゴリズムを理解し,それらを用いた C 言語のプログラムを読むこと,書くことができる.
前もって履修
しておくべき科目(1,000文字以内)
/Prerequisites(up to 1,000 letters)
コンピュータリテラシー,基礎プログラミングおよび演習
前もって履修しておくこ
とが望ましい科目(1,000文字以内)
/Recommended prerequisites and preparation(up to 1,000 letters)
なし
教科書等(1,000文字以内)
/Course textbooks and materials(up to 1,000 letters)
参考書は以下の通り.
   R. セジウィック著, 野下ら訳: アルゴリズムC 第1巻=基礎・整列, 近代科学社 1996.

この本は少し古く,また内容は最新の書籍でもあまり変わっていないので,自分が理解しやすい専門書を選択してもよいでしょう.講義内容を扱っているかどうかで書籍を選んでください.
授業内容と
その進め方(2,000文字以内)
/Course outline and weekly schedule(up to 2,000 letters)
授業内容は以下の通りである.

第  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を使用
(「遠隔授業に関する情報」を参照)


実務経験を活かした
授業内容
(実務経験内容も含む)
/Course content utilizing practical experience
授業時間外の学習
(予習・復習等)(1,000文字以内)
/Preparation and review outside class(up to 1,000 letters)
講義後に,次の日曜日までに小テストに回答すること.また,翌週公開される小テスト解説動画をみて自己採点し,講義内容を復習すること.講義の復習や小テストの回答には,オンデマンド用講義動画を利用すること.

講義資料と共にサンプルプログラムを公開するので,必ずコンパイルして実行し,動作を確認すること.
また、サンプルプログラムを活用して、理解を深めるための簡単な改良を施したり,疑問に感じる部分の動作確認を行ったりすること.
成績評価方法
および評価基準
(最低達成基準を含む)
(1,000文字以内)
/Evaluation and grading
(up to 1,000 letters)
(a) 評価方法: 中間試験,期末試験,課題,レポートの結果から,次のように総合評価する.

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

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


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

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

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

  (3) 整列,探索のアルゴリズムを説明することができ,それらを用いたプログラムを説明することができる.また,それらを用いて基本的なプログラムを書くことができる.
オフィスアワー:
授業相談(1,000文字以内)
/Office hours(up to 1,000 letters)
事前にメール等でアポイントをとること.
学生へのメッセージ(1,000文字以内)
/Message for students(up to 1,000 letters)
特にポインタを使ったデータ構造や,各種ソートアルゴリズムが要点となるので,充分な予習及び復習をすること.期日を守って課題を提出し,遅刻せずに出席することが基本である.
その他
/Others
再履修者のクラスは、原則として昨年度と同一クラスとします.

ただし,他の講義と重複する等の理由で水曜開講の1クラスに移動したい再履修者は,
移動希望先クラスの担当教員にメールで理由の説明し,許可を得てください.
その上で、クラスを変更することを橋本にも連絡してください.
キーワード
/Keywords
ブロック構造, 引数機構, 再帰呼出し, スタック, キュー, デク, ポインタ, リスト, 整列, マージ, 探索