プログラミングⅡA

科目基礎情報

学校 明石工業高等専門学校 開講年度 令和05年度 (2023年度)
授業科目 プログラミングⅡA
科目番号 5228 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 電気情報工学科 対象学年 2
開設期 前期 週時間数 2
教科書/教材 柴田望洋:「新・明解C言語 入門編」、SBクリエイティブ
担当教員 土田 隼之

到達目標

[1]C言語の演算子、データ型、関数など基本文法が理解でき、それらを用いたプログラムが記述できる。
[2]文字列と配列の関係が理解でき、文字列を扱ったプログラムが記述できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1C言語の基本文法を理解し、関数などを利用した応用的なプログラムを記述すること ができる。C言語の基本文法を理解し、関数などを利用した基本的なプログラムを記述することがで きる。C言語の基本文法を理解し、関数などを利用した基本的なプログラムを記述することができない。
評価項目2文字列と配列の関係を説明でき、文字列を扱った応用的なプログラムを記述できる。文字列と配列の関係を説明でき、文字列を扱った基本的なプロ グラムを記述できる。文字列と配列の関係を説明できず、 文字列を扱ったプログラムが記述できない。

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

教育方法等

概要:
プログラミングⅠに引き続き、C言語によるプログラミングに関する講義と演習を行う。後半では、プログラム開発で用いられる既存ライブラリの紹介と使用方法も扱う。
本講義は、5年間日立製作所研究開発本部にてミドルウェア(データベース)の研究開発に従事した経験を持つ教員が担当する。
授業の進め方・方法:
テキストの内容を理解するとともに応用問題の演習を個人単位で行い個人のプログラム開発能力を高める。ここで、問題解決方法を机上で熟慮するとともにプログラム計画と記述の変更が分かるように履歴管理の習慣を付けることを推奨する。
注意点:
プログラミングⅠを習得していること。本科目は、授業で保証する学習時間と、予習・復習及び課題レポート作成に必要な標準的な自己学習時間の総計が、90時間に相当する学習内容である。本科目は学修単位適用科目であるため,課題の提出状況やその内容により,評価の対象とならないことがある.具体的な条件は講義中に示す.評価の対象としない欠席条件(割合) 1/3以上の欠課

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス、確認テスト 授業の目標を理解できる。基本的な構文を復習理解し、 説明できる。
2週 関数の概念、基本 関数の概念・基礎を理解し、プログラムを記述できる。
3週 関数の定義、呼び出し 関数の定義・呼び出しを理解し、プログラムを記述できる。
4週 関数の設計 様々な関数の設計を理解し、プログラムを記述できる。
5週 演習(1) 関数を使った演習問題を自分でプログラムできる。
6週 基本型(1) 基本型を理解し、プログラムを記述できる。
7週 基本型(2) 基本型を使った演習問題を自分でプログラムできる。
8週 中間試験 1週~7週までの内容を理解し、プログラムが記述できる。
2ndQ
9週 関数形式マクロ 関数形式マクロを理解し、プログラムを記述できる。
10週 列挙体 列挙体を理解し、プログラムを記述できる。
11週 入出力と文字 文字の入出力を理解し、プログラムを記述できる。
12週 文字列(1) 文字列の基本を理解し、プログラムを記述できる。
13週 文字列(2) 文字列の配列及び操作を理解し、プログラムを記述できる。
14週 文字列(3) 文字列の操作について理解し、プログラムを記述できる。
15週 演習(2) 文字列を使った演習問題を自分でプログラムできる。
16週 期末試験 8週~15週までの内容を理解し、プログラムを記述できる。

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4前1,前5,前15,後13,後14,後15
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4前2,前3,前4,前5
変数の概念を説明できる。4前1
データ型の概念を説明できる。4前6,前7
制御構造の概念を理解し、条件分岐を記述できる。4前1
制御構造の概念を理解し、反復処理を記述できる。4前1
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4前1,前15,後13,後14,後15
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4前1,前5,前15,後13,後14,後15
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4前2,後13,後14,後15
主要な言語処理プロセッサの種類と特徴を説明できる。4前1
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。4前1
プログラミング言語は計算モデルによって分類されることを説明できる。4前1
主要な計算モデルを説明できる。4前1
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4後13,後14,後15
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4後13,後14,後15
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4後13,後14,後15
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。4後13,後14,後15
ソフトウェアアルゴリズムの概念を説明できる。4後6,後7
与えられたアルゴリズムが問題を解決していく過程を説明できる。4後6,後7
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。4後6,後7,後13,後14,後15
整列、探索など、基本的なアルゴリズムについて説明できる。4後6,後7
時間計算量によってアルゴリズムを比較・評価できることを説明できる。3後6,後7
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。3後6,後7
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。4後5,後6,後7
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。4後5,後6,後7
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。3後5,後6,後7
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。3後5,後6,後7
分野横断的能力態度・志向性(人間力)態度・志向性態度・志向性高専で学んだ専門分野・一般科目の知識が、企業や大学等でどのように活用・応用されるかを説明できる。2後13,後14,後15
企業等における技術者・研究者等の実務を認識している。2後13,後14,後15
高専で学んだ専門分野・一般科目の知識が、企業等でどのように活用・応用されているかを認識できる。3前1
総合的な学習経験と創造的思考力総合的な学習経験と創造的思考力総合的な学習経験と創造的思考力課題や要求に対する設計解を提示するための一連のプロセス(課題認識・構想・設計・製作・評価など)を実践できる。2後13,後14,後15

評価割合

試験レポート相互評価態度ポートフォリオその他合計
総合評価割合50000500100
基礎的能力0000000
専門的能力50000500100
分野横断的能力0000000