プログラミング

科目基礎情報

学校 松江工業高等専門学校 開講年度 令和02年度 (2020年度)
授業科目 プログラミング
科目番号 0038 科目区分 専門 / 選択
授業形態 授業 単位の種別と単位数 学修単位: 2
開設学科 電気情報工学科 対象学年 4
開設期 前期 週時間数 2
教科書/教材 適宜,資料を配布する.
担当教員 林田 守広

到達目標

(1) プログラム文法の基礎(クラス,オブジェクト指向)を理解する.
(2) プログラムを読み,その動作を説明できる.
(3) 基本的なプログラムを作成できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1プログラム文法の基礎(クラス,オブジェクト指向)を的確に理解している.プログラム文法の基礎(クラス,オブジェクト指向)を理解している.プログラム文法の基礎(クラス,オブジェクト指向)を理解していない.
評価項目2プログラムを読み,その動作を的確に説明できる.プログラムを読み,その動作を説明できる.プログラムを読み,その動作を説明できない.
評価項目3基本的なプログラムを的確に作成できる.基本的なプログラムを作成できる.基本的なプログラムを作成できない.

学科の到達目標項目との関係

学習・教育到達度目標 E3 説明 閉じる

教育方法等

概要:
情報化社会のなかでスマートフォンを始めとする様々な機器にソフトウェアが組み込まれており,現代を生きる人間にとって情報処理システムは無くてはならないものとなっている.本授業の大きな目標はそのような機器のなかでソフトウェアがどのように動作しているか理解できるようになること,および,自分自身で設定した仕様に基づいてソフトウェア開発ができるようになることである.そのために本授業ではC++言語を通してオブジェクト指向プログラミングの基本概念,および応用としてデータ構造とアルゴリズムの基礎を学ぶ.
授業の進め方・方法:
・ (1)~(3)の目標それぞれについて課題演習にて評価する.
・ 60点以上(100点満点)を合格とする.定期試験,再評価試験,追認試験は実施しない.
・ 課題演習等(100%):レポートまたはプログラムの提出
注意点:
演習を数多くこなすことによってプログラムの動作を理解し慣れていくため,自分自身で考えながらプログラムを記述していくこと.他の人と話し合ってもよいが,最後は自分で判断して記述すること.質問があれば330教員室に来てください.本科目は学修単位科目であり,1回の授業(90分)に対して,180分以上の自学自習が必要である。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 基礎プログラミング2,3の復習 基礎プログラミング2,3で学習した内容の確認を行う.
2週 関数の多重定義と関数テンプレート 関数の多重定義(オーバーロード)と関数テンプレートを理解する.
3週 カプセル化とコンストラクタ オブジェクト指向の基本概念とアクセス制限によるカプセル化,およびコンストラクタを理解する.
4週 クラステンプレートと動的配列 クラステンプレートおよび動的配列を理解し,std::vector の使い方を学ぶ.
5週 ソート 様々なソートのアルゴリズムを理解する.
6週 グラフと探索 2分探索木による探索およびグラフの表現と問題の困難さを理解する.
7週 中間演習 第6回までの内容について演習を行う.
8週 中間試験 第6回までの内容について理解を確認する.
2ndQ
9週 数値計算 ニュートン法,最急降下法,ルンゲクッタ法を理解する.
10週 発表演習(1) データ構造に対するアルゴリズムについて相互に理解する.
11週 発表演習(2) データ構造に対するアルゴリズムについて相互に理解する.
12週 機械学習(1) サポートベクトルマシン(SVM)を理解する.
13週 機械学習(2) 人工ニューラルネットワークを理解する.
14週 期末演習 第13回までの内容について演習を行う.
15週 期末試験 第13回までの内容について理解を確認する.
16週 総括 本授業で学習したことをまとめ,定着させる.

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。3
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。3
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。3
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。3
主要な言語処理プロセッサの種類と特徴を説明できる。3
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。3
プログラミング言語は計算モデルによって分類されることを説明できる。3
主要な計算モデルを説明できる。3
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。3

評価割合

レポート課題合計
総合評価割合100100
基礎的能力00
専門的能力100100
分野横断的能力00