山梨大学電子シラバス>検索結果一覧>授業データ



授業科目名 プログラミング応用及び演習II
時間割番号 UPC159
担当教員名 鍋島 英知/古屋 貴彦
開講学期・曜日・時限 後期・木/金・V/II 単位数 2
<対象学生>
(未登録)
<授業の目的>
「プログラミング応用及び演習Ⅰ」で修得した内容を基にして,関数の再帰呼び出し,および探索,整列などのアルゴリズムの実現手法をC++言語によるプログラミングを通して学ぶ.
<本授業科目による獲得・涵養が特に期待されるコンピテンシー>(能力・資質)
工学部>工学科1年次向け
記号コンピテンシー(能力・資質)説明 
工-A専門②専門的知識専門分野の基礎的知識を体系的に理解して説明
工-B⑦理解力・判断力自然現象や社会的事象を理解・分析
<到達目標>  到達目標とは
目標NO説明コンピテンシーとの対応
工学
1関数の再帰呼び出しが理解でき,プログラムとして実現できること工-A
2探索,整列等の基本的アルゴリズム,ならびにそれらの計算量が理解でき,プログラムとして実現できること工-A
3問題を分析し,問題に対して適切なアルゴリズムを選択できること工-B
<成績評価の方法>
目標No割合評価の観点
130%小テスト,レポート,試験により評価する
250%小テスト,レポート,試験により評価する
320%小テスト,レポート,試験により評価する
合計100% 
<授業の方法>
講義と演習を交互に実施する.授業は対面形式での実施を基本とする.ただし状況に応じてハイブリッド型・オンライン型の実施方法を併用する.
<講義の実施方法>
講義は座学を基本としつつ,理解を深めるため講義時間中に取り組む演習問題と,講義後に取り組むレポート課題を課す.レポート課題については次回講義時に匿名化した上でそのレビューを行う.
<演習の実施方法>
授業計画のタイトルに対応するプログラミングの演習問題に取り組む.毎回の授業は「小テスト」「演習問題の取り組み」「教員による演習問題の解説」の3部で構成される.
<受講に際して・学生へのメッセージ>
・本科目は「プログラミング応用及び演習Ⅰ」の修得を前提とする.「プログラミング応用及び演習Ⅰ」の内容を授業開始日までに復習すること.
・プログラミング言語を習得するためには,プログラムを自力で書き,コンパイルエラーを修正し,不具合があればそれも修正し,様々なテスト事例に対しても正しく動作するか確認するというサイクルを繰り返すことが非常に重要である.講義と演習に出席するだけでは十分な上達が見込めない.そのため,予習・復習やレポート課題などを通して授業時間外にもプログラムを組み,その動作を確かめることが必要不可欠である.
<テキスト>
  1. 電子情報通信学会編 ; 岩沼宏治 [ほか] 共著, データ構造とアルゴリズム, コロナ社, ISBN:4339018236,
    (2018年出版 電子情報通信レクチャーシリーズ / 電子情報通信学会編, B-8)
<参考書>
  1. 高橋麻奈著, やさしいC++ 第5版, SBクリエイティブ, ISBN:4797392592,
    (2017年出版)

  2. Cay Horstmann, Computing concepts with C++ essentials : pbk 3rd ed, J. Wiley, ISBN:0471164372,
    (2003年出版)

  3. ハーバート・シルト著 ; トップスタジオ訳, 独習C++ 第4版, 翔泳社, ISBN:4798119768,
    (2010年出版)
<授業計画の概要>
1タイトル再帰呼び出しに関する講義(担当:鍋島英知)
事前学習
事後学習
・事前学習:教科書2.5節([4] 再帰呼び出しによる木のなぞり)を読んでおくこと
・事後学習:講義で示したプログラムを実際に動作させ,再帰呼び出しの動作について理解を深めること
授業内容再帰呼び出しの概念を理解し,再帰的手続きの実現方法を理解する
2タイトル再帰呼び出しに関する演習(担当:古屋貴彦)
事前学習
事後学習
・事前学習:講義内容を復習する.
・事後学習:教員による演習問題の解説の動画を視聴し,演習問題のプログラムを完成させ,動作を確認する.
授業内容・最初に,本授業の到達目標,授業の進め方に関するガイダンスを行う.
・次に,演習問題に取り組む.必要に応じて教員・TAに質問する.
・最後に,教員による演習問題の解説を受ける.必要に応じてメモを取り,授業後のプログラム完成作業に役立てる.
3タイトル再帰呼び出しによる木のなぞりに関する講義(担当:鍋島英知)
事前学習
事後学習
・事前学習:教科書2.5節([4] 再帰呼び出しによる木のなぞり)を読んでおくこと
・事後学習:講義で示したプログラムを実際に動作させ,再帰による木のなぞりや木に対する各種操作について理解を深めること
授業内容再帰による木のなぞりの実装方法と,再帰の応用事例としてバックトラック探索を理解する
4タイトル再帰呼び出しによる木のなぞりに関する演習(担当:古屋貴彦)
事前学習
事後学習
・事前学習:講義内容を復習する.また,前回の演習内容を復習し小テストに備える.
・事後学習:教員による演習問題の解説の動画を視聴し,演習問題のプログラムを完成させ,動作を確認する.
授業内容・授業の最初に,前回の演習内容に関する小テストに解答する.その後,小テストの答え合わせと解説を行う.
・次に,演習問題に取り組む.必要に応じて教員・TAに質問する.
・最後に,教員による演習問題の解説を受ける.必要に応じてメモを取り,授業後のプログラム完成作業に役立てる.
5タイトル計算量に関する講義(担当:鍋島英知)
事前学習
事後学習
・事前学習:教科書3.1節を読んでおくこと
・事後学習:レポート課題を通して計算量の漸近的評価について理解を深めること
授業内容計算量の概念ならびにその漸近的評価について解説し,基本的なアルゴリズムの計算量算出方法を学ぶ
6タイトル分割統治法,バックトラック探索に関する演習(担当:古屋貴彦)
事前学習
事後学習
・事前学習:講義内容を復習する.また,前回の演習内容を復習し小テストに備える.
・事後学習:教員による演習問題の解説の動画を視聴し,演習問題のプログラムを完成させ,動作を確認する.
授業内容・授業の最初に,前回の演習内容に関する小テストに解答する.その後,小テストの答え合わせと解説を行う.
・次に,演習問題に取り組む.必要に応じて教員・TAに質問する.
・最後に,教員による演習問題の解説を受ける.必要に応じてメモを取り,授業後のプログラム完成作業に役立てる.
7タイトル線形探索と二分探索に関する講義(担当:鍋島英知)
事前学習
事後学習
・事前学習:教科書3.2節, 3.3節を読んでおくこと
・事後学習:講義で示したプログラムを実際に動作させ,線形探索と二分探索の速度差について問題の大きさを変化させながら評価すること
授業内容線形探索と二分探索の実現方法と,その特徴,利点,欠点を理解する
8タイトル線形探索と二分探索に関する演習(担当:古屋貴彦)
事前学習
事後学習
・事前学習:講義内容を復習する.また,前回の演習内容を復習し小テストに備える.
・事後学習:教員による演習問題の解説の動画を視聴し,演習問題のプログラムを完成させ,動作を確認する.
授業内容・授業の最初に,前回の演習内容に関する小テストに解答する.その後,小テストの答え合わせと解説を行う.
・次に,演習問題に取り組む.必要に応じて教員・TAに質問する.
・最後に,教員による演習問題の解説を受ける.必要に応じてメモを取り,授業後のプログラム完成作業に役立てる.
9タイトル素朴な整列アルゴリズムに関する講義(担当:鍋島英知)
事前学習
事後学習
・事前学習:教科書3.4節を読んでおくこと
・事後学習:講義で示したプログラムを実際に動作させ,各ソートアルゴリズムについて理解を深めるとともに,問題の種類・大きさを変化させながら速度差を評価すること
授業内容選択ソート,挿入ソートのアルゴリズムとその利点・欠点,ソートアルゴリズムの安定性,数列以外のデータのソート方法について学ぶ
10タイトル素朴な整列アルゴリズムに関する演習(担当:古屋貴彦)
事前学習
事後学習
・事前学習:講義内容を復習する.また,前回の演習内容を復習し小テストに備える.
・事後学習:教員による演習問題の解説の動画を視聴し,演習問題のプログラムを完成させ,動作を確認する.
授業内容・授業の最初に,前回の演習内容に関する小テストに解答する.その後,小テストの答え合わせと解説を行う.
・次に,演習問題に取り組む.必要に応じて教員・TAに質問する.
・最後に,教員による演習問題の解説を受ける.必要に応じてメモを取り,授業後のプログラム完成作業に役立てる.
11タイトル再帰的整列アルゴリズムに関する講義(担当:鍋島英知)
事前学習
事後学習
・事前学習:教科書3.5節を読んでおくこと
・事後学習:講義で示したプログラムを実際に動作させ,各ソートアルゴリズムについて理解を深めるとともに,問題の種類・大きさを変化させながら速度差を評価すること
授業内容マージソート,クィックソート,外部ソートのアルゴリズムと,その利点・欠点を理解する
12タイトル再帰的整列アルゴリズムに関する演習(担当:古屋貴彦)
事前学習
事後学習
・事前学習:講義内容を復習する.また,前回の演習内容を復習し小テストに備える.
・事後学習:教員による演習問題の解説の動画を視聴し,演習問題のプログラムを完成させ,動作を確認する.
授業内容・授業の最初に,前回の演習内容に関する小テストに解答する.その後,小テストの答え合わせと解説を行う.
・次に,演習問題に取り組む.必要に応じて教員・TAに質問する.
・最後に,教員による演習問題の解説を受ける.必要に応じてメモを取り,授業後のプログラム完成作業に役立てる.
13タイトル空間を利用した整列アルゴリズムに関する講義(担当:鍋島英知)
事前学習
事後学習
・事前学習:教科書3.6節を読んでおくこと
・事後学習:講義で示したプログラムを実際に動作させ,各ソートアルゴリズムについて理解を深めるとともに,問題の大きさを変化させながら速度差を評価すること
授業内容バケットソート,計数ソート,基数ソートのアルゴリズムと,その利点・欠点を理解する
14タイトル空間を利用した整列アルゴリズムに関する演習(担当:古屋貴彦)
事前学習
事後学習
・事前学習:講義内容を復習する.また,前回の演習内容を復習し小テストに備える.
・事後学習:教員による演習問題の解説の動画を視聴し,演習問題のプログラムを完成させ,動作を確認する.
授業内容・授業の最初に,前回の演習内容に関する小テストに解答する.その後,小テストの答え合わせと解説を行う.
・次に,演習問題に取り組む.必要に応じて教員・TAに質問する.
・最後に,教員による演習問題の解説を受ける.必要に応じてメモを取り,授業後のプログラム完成作業に役立てる.
15タイトル最終評価(総括とまとめ)(担当:鍋島英知,古屋貴彦)
事前学習
事後学習
事前学習:本科目の内容を振り返り,試験に備える.
事後学習:自身の解答が適切であったかどうか,プログラムを実際に動作させるなどして検証すること.
授業内容本科目全体の内容を総括し,その理解度を試験により評価する.
<前年度授業に対する改善要望等への対応>
2024年度からの開講科目である.
<備考>
(未登録)