概要:
身近な家電品などさまざまなものにコンピュータが組み込まれており、最近ではさらにIoTが多く導入されている。また、電気工学や電子工学の様々な問題を解くのに多くの計算を必要とするし、実験データの処理にもコンピュータを利用することが多い。製品の開発、現象の解析、実験結果の処理などあらゆる場面でコンピュータを使うが、目的にあわせてコンピュータ上で処理をするには、プログラムが必要となる。
この講義では、プログラミング言語として現在最も普及しているC言語を用いて,プログラミングの基礎を学ぶ。特に電気電子システム工学科で今後学ぶ様々な課題を解く手法としてプログラミングが利用する方法を検討する。また、IoTシステムの概略を理解し、マイコンとクラウドサービスを利用したIoTを構築する。さらにIoTの応用方法を検討する。
授業の進め方・方法:
各回の授業は、補助教材の説明と演習(教科書の例題と演習)を例に取り組む。
プログラムは、その授業時間に学ぶ内容だけでなく、それまでに学習した内容を理解していないと理解できない。例題、補助教材の内容を復習しながら、演習課題のプログラムを作成・実行する実習を行う。毎回課題があり、課題の結果(実行例)とプログラムソースなどをTeams等指定の方法で提出する。
プログラミングの応用方法、使用例として、DXのシステムの概略を理解しさらにI応用方法を検討、提案する。
注意点:
演習課題は授業時間中に出すので、欠席が目立つ場合や授業への取り組み方に問題がある場合には、課題提出が難しくなるので注意すること。
BYODを推奨している。端末室の共用PCでも学ぶことができるが、自学自習を行うためにはPCを持ち込んで受講したほうが効率的である。
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
プログラミング学習の準備
|
IoT・AIの概略および用いられるセンサー、マイコン、クラウドサービスの働きを理解する。
|
2週 |
Cの基礎 |
開発環境の使い方を理解する
|
3週 |
Cの基礎 |
簡単なプログラムの作成方法を理解する
|
4週 |
数と変数 IoTシステムの応用 |
変数の種類(型)や定義、変数の読み込みや表示補法と演算のルールを含むプログラムを理解する。 参考:1,2
|
5週 |
数と変数 開発環境の使い方 |
デバッガ―等の開発環境の便利な使い方を理解する
|
6週 |
数と変数 ブレイクポイント、ウヲッチウインドウ |
変数の中を確認する。 発生したエラーメッセージからプログラム内のミスを修正する。
|
7週 |
前期中間試験 |
試験時間:50分
|
8週 |
前期中間試験の解説と発展授業 |
前期中間試験の解答を行い、問題および解答の内容を理解する。
|
2ndQ |
9週 |
制御文:配列とループ |
プログラムの流れを制御(分岐)命令であるdo文、while文、for文を理解する。 参考:4章
|
10週 |
制御文:配列とループ |
プログラムの流れを制御(分岐)命令であるdo文、while文、for文を理解する。 参考:4章
|
11週 |
制御文:配列とループ |
制御文:条件付きループを理解する。
|
12週 |
制御文:真偽と条件分岐 |
制御文:条件付きループを理解する。
|
13週 |
制御文:真偽と条件分岐 |
計算の手法、プログラムの流れが異なっていても同じ演算ができることを理解する。
|
14週 |
制御文:真偽と条件分岐 |
前期の学習内容を確認する。
|
15週 |
学習内容を確認 |
前期の学習内容を確認する。
|
16週 |
前期末試験 17週:前期末試験の解説と発展授業 |
試験時間:50分 17週:前期末試験の解説
|
後期 |
3rdQ |
1週 |
制御文:配列とループ |
プログラムの流れを制御(分岐)命令であるdo文、while文、for文を理解する。 参考:4章
|
2週 |
制御文:配列とループ |
プログラムの流れを制御(分岐)命令であるdo文、while文、for文を理解する。 参考:4章
|
3週 |
制御文:条件付きループ |
制御文:条件付きループを理解する。
|
4週 |
制御文:条件付きループ |
制御文:条件付きループを理解する。
|
5週 |
文字と文字列 |
計算の手法、プログラムの流れが異なっていても同じ演算ができることを理解する。
|
6週 |
文字と文字列 |
計算の手法、プログラムの流れが異なっていても同じ演算ができることを理解する。
|
7週 |
後期中間試験 |
試験時間:50分
|
8週 |
後期中間試験の解説と発展授業 |
後期中間試験の解答を行い、問題および解答の内容を理解する。
|
4thQ |
9週 |
アドレスとポインター |
メモリやメモリマップドIOの基礎となる、ポインターの概念について理解する
|
10週 |
関数の作成 |
関数の機能と使い方を理解する。 参考:6,8章
|
11週 |
基数変換と論理演算 |
変数の型を復習し、10進数を2、8、16進数に変換するプログラムを理解する。
|
12週 |
関数を含むプログラムの復習 |
学習内容を振り返り確認する。
|
13週 |
IO |
発展的内容であるIOをを理解する。 主にファイルアクセス
|
14週 |
構造体 |
発展的内容であるカプセル化およびオブジェクト指向の考え方を理解する
|
15週 |
まとめと演習(1) |
1年間の学習内容を振り返り確認する。
|
16週 |
前期末試験 17週:前期末試験の解説と発展授業 |
試験時間:50分 17週:前期末試験の解説
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 論理演算と進数変換の仕組みを用いて基本的な演算ができる。 | 3 | 後9 |
情報伝達システムやインターネットの基本的な仕組みを把握している。 | 3 | 前1,前2,前3 |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 3 | 前13,前14,前15,後2,後3,後4,後5,後6,後9,後10,後12,後13,後14,後15 |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 3 | 前4,前5,前6,前9,前10,前11,前12,前13,前14,前15,後2,後3,後4,後5,後6,後9,後10,後11,後12,後13,後14,後15 |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 3 | 前4,前5,前6,前9,前10,前11,前12,前13,前14,前15,後2,後3,後4,後5,後6,後9,後10,後11,後12,後13,後14,後15 |