到達目標
C言語の文法やプログラミングの基礎を習得し、簡単なプログラムを作成する能力を身につける。
【V-A-7】情報処理 C言語の数値表現、数値計算の基本的な計算方法を理解し、プログラムを作成できる。
【Ⅳ-C-3】アルゴリズム 機械工学分野で共通的に使用される数値計算法の基礎を理解し、プログラムを作成できる。
【Ⅰ】数学 代数、積分の知識をもとにプログラム作成に応用できる。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 必要最低限な到達レベルの目安 |
C言語の文法を理解し、整数型、実数型、文字型などのデータ型を説明でき、データを入力し、算術演算および比較演算を行って条件判断し、結果を出力したり、繰り返し処理と一次元配列、二次元配列を使ったプログラムを作成できる。 | 左に挙げた項目について出題された小テスト、定期試験、課題レポートの問題に取り組み、解答をまとめ提出できる。不正解でも、1回程度の再提出で正解を導くことができる。 | 左に挙げた項目について出題された小テスト、定期試験、課題レポートの問題に取り組み、解答をまとめ提出できる。不正解でも、2回程度の再提出で正解を導くことができる。 | 左に挙げた項目について出題された小テスト、定期試験、課題レポートの問題に取り組み、解答をまとめ提出できる。不正解でも、3回程度の再提出で正解を導くことができる。 |
数値表現などの数値計算の基礎と計算方法を習得する。 | 左に挙げた項目について出題された課題レポートに取り組み、解答をまとめ提出できる。1回程度の再提出で正解を導くことができる。 | 左に挙げた項目について出題された課題レポートに取り組み、解答をまとめ提出できる。2回程度の再提出で正解を導くことができる。 | 左に挙げた項目について出題された課題レポートに取り組み、解答をまとめ提出できる。3回程度の再提出で正解を導くことができる。 |
工学分野で共通して使われる数値計算法を説明できる。 | 左に挙げた項目について出題された課題レポートに取り組み、解答をまとめ提出できる。1回程度の再提出で正解を導くことができる。 | 左に挙げた項目について出題された課題レポートに取り組み、解答をまとめ提出できる。2回程度の再提出で正解を導くことができる。 | 左に挙げた項目について出題された課題レポートに取り組み、解答をまとめ提出できる。3回程度の再提出で正解を導くことができる。 |
学科の到達目標項目との関係
教育方法等
概要:
授業は講義と演習を併用して進める。具体的には、
(1)プログラミング言語Cの文法の解説に加えて、
(2)数値計算法の代表例である連立1次方程式の解法と数値積分をとりあげて解説を行い、
(3)PC端末でのCプログラミング演習を通して、Cによる数値計算プログラミングの基礎について理解を深める。
授業の進め方・方法:
本講義では、教員作成の資料を用いて講義を進める。講義ではC言語の文法を中心に説明した後、学生が各自持参したノートPCと統合開発環境を使い、学んだことを直ちに実践に移すプログラミング演習に入る。時間を要する思考力よりも即応力の向上をはかる。なお、学習の補助として、各自、自分の実力にあったC言語の参考書を購入のこと。なお、初学者には、やさしいC第5版(ソフトバンククリエイティブ)、を推奨する。また、既に基礎を学習している学生には、新・明解C言語入門編(ソフトバンククリエイティブ)を推奨する。
注意点:
講義では、座学の後に直ちに演習に入るため、受講者には文法等の基礎的事項の記憶が要求される。また、演習では、座学で説明した内容の実践を行うため、講義への集中と指示への追従が必要となる。なお、定期試験(前期中間、前期期末、後期中間)の得点を60%、課題レポートの得点を20%、小テストの総得点を10%、講義での学習への取り組みの姿勢を10%として評価し、年間の総合得点を計算する。居眠り、テキストやノートPC等の忘れ物、は学習への取り組みの姿勢の評価で減点の対象とする。総得点の60%以上で単位を認定する。
(各科目個別記述)
・ この科目の主たる関連科目はプログラミングII(3年)である。
(モデルコアカリキュラム)
・ 対応するモデルコアカリキュラム(MCC)の学習到達目標、学習内容およびその到達目標を【】内の記号・番号で示す。
(航空技術者プログラム)
・ 【航】は航空技術者プログラムの対応項目であることを意味する。
(学位審査基準の要件による分類・適用)
科目区分 専門科目③ 関連 工学および周辺技術に関する科目
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
ガイダンス、Cプログラミングの基礎 |
C言語の概要と、C言語プログラム作成の基礎を学習する。
|
2週 |
統合開発環境のインストール、および、起動法と使用法 |
統合開発環境eclipseのインストール手順と、eclipseの起動法、eclipseの使い方を学習する。
|
3週 |
データ型(1) |
データ型の概要と、整数型の種類と、データの宣言法、計算機上での内部表現を学習する。
|
4週 |
データ型(2) |
実数型、文字型の種類と、データの宣言法、計算機上での内部表現を学習する。
|
5週 |
データ型(3)、式と演算子(1) |
列挙型の宣言法、計算機上での内部表現を学習する。 演算子の概要と、式の中でのデータと算術演算子の使い方を学習する。
|
6週 |
式と演算子(2) |
式の中でのデータと関係演算子、論理演算子の使い方を学習する。
|
7週 |
式と演算子(3) |
型変換演算子の使い方と、演算子の優先順位、式の評価法を学習する。
|
8週 |
前期中間試験 |
前期第1週~7週までの学習内容を試験範囲とする。
|
2ndQ |
9週 |
条件分岐(1) |
if文と場合分けの条件式(=論理式、関係式)の使い方を学習する。
|
10週 |
条件分岐(2) |
if文やswitch文による条件分岐の使い方を学習する。
|
11週 |
繰り返し処理(1) |
繰り返し処理のwhile文の使い方を学習する。
|
12週 |
繰り返し処理(2) |
繰り返し処理のdo~while文の使い方を学習する。
|
13週 |
繰り返し処理(3) |
繰り返し処理のfor文の使い方を学習する。
|
14週 |
配列(1) |
1次元配列の概念と宣言法、使い方を学習する。
|
15週 |
配列(2) |
多次元配列の概念と宣言法、繰り返し構文を併用する使い方を学習する。
|
16週 |
期末試験 |
前期第9週~14週までの学習内容を試験範囲とする。
|
後期 |
3rdQ |
1週 |
関数(1) |
プログラム単位と関数の概念を学習する。
|
2週 |
関数(2) |
関数とモジュールの概念、記憶クラスを学習する。
|
3週 |
関数(3) |
関数の再帰呼び出しを学習する。
|
4週 |
記憶クラス |
変数、関数の記憶クラスを学習する。
|
5週 |
ポインタ |
ポインタの宣言法と演算、変数・配列との関係を学習する。
|
6週 |
構造体 |
構造体の宣言法と使い方を学習する。
|
7週 |
文字列と文字列関数 |
文字列の扱い方と文字列ライブラリ関数を学習する。
|
8週 |
後期中間試験 |
後期第1週~7週までの学習内容を試験範囲とする。
|
4thQ |
9週 |
高水準入出力関数(1) |
ファイルの概念、ファイル入力処理を学習する。
|
10週 |
高水準入出力関数(2) |
ファイル出力処理を学習する。
|
11週 |
数値計算の基礎 |
数値の表現と数値計算における誤差を学習する。
|
12週 |
連立1次方程式(1) |
Gauss-Jordan法による解の求め方を学習する。
|
13週 |
連立1次方程式(2) |
Gauss-Jordan法のプログラムを作成する。
|
14週 |
数値積分 |
台形公式による数値積分を学習する。
|
15週 |
並列計算の基礎 |
OpenMPによるスレッド並列化を学習する。
|
16週 |
学年末試験 |
実施せず。後期第9週~15週までの課題レポートを後期期末試験とする。
|
評価割合
| 試験 | 小テスト | レポート | その他 | 合計 |
総合評価割合 | 60 | 10 | 20 | 10 | 100 |
基礎的理解 | 30 | 5 | 10 | 0 | 45 |
応用力(実践・専門・融合) | 30 | 5 | 10 | 0 | 45 |
社会性(プレゼン・コミュニケーション・PBL) | 0 | 0 | 0 | 0 | 0 |
主体的・継続的学修意欲 | 0 | 0 | 0 | 10 | 10 |