到達目標
本科目では、プログラミング未経験者を対象として、プログラミングの概念、基本的な言語仕様、アルゴリズムを学習し、簡単なプログラムを作成・実行できるようになることを目標とする。
1. 変数、配列、構文、関数などのプログラミングに必要な基本概念を理解する。
2. プログラムの制御構造を理解し、実行過程を追うことができる。
3. 簡単なアルゴリズムについてプログラムの作成・修正をすることができる。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | 言語仕様とアルゴリズムに関する問題を80%以上正答することができる。 | 言語仕様とアルゴリズムに関する問題を70%以上正答することができる。 | 言語仕様とアルゴリズムに関する問題を60%以上正答することができない。 |
評価項目2 | プログラムが実行できないときの原因を特定し、様々な不具合に対処することができる。 | プログラムが実行できないときの原因を特定し、初歩的な不具合を修正することができる。 | プログラムを正常に実行できないときに表示されるエラーメッセージの内容を説明できない。 |
評価項目3 | 自ら設定した課題を解決するプログラムを作成・実行することができる。 | 他のプログラムを参考に、与えられた課題を解決するプログラムを作成・実行することができる。 | 基本的なプログラムの作成・実行ができない。 |
学科の到達目標項目との関係
教育方法等
概要:
化学系専門科目に登場する様々な理論式や方程式は複数のパラメータを含みかつ複雑な形式をしていることが多く、電卓だけで計算するのは困難である。これに単位変換なども加わると計算はさらに煩雑になる。ここで表計算ソフトやプログラミング言語を用いれば、これらの計算を見通しよく効率的に計算することができる。また、様々な条件のもとで計算すれば、簡単なシミュレーションを行うこともできる。また、化学実験で得られるデータ処理にもプログラミングを応用することができ、解析を効率的に行うことができる。
授業の進め方・方法:
実際にパソコンを使った演習形式で進める。
【授業時間30時間+自学自習時間60時間】
注意点:
内容の理解・プログラミング技術の習得には、実際に自分でプログラミングして実行してみることが必要不可欠である。課題の提出にはmanabaを使うので、あらかじめアクセス環境を確保しておくこと。
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
表計算ソフトの概要 |
表計算の機能だけを用いて、簡単なモル計算、化学反応式の計算ができる。
|
2週 |
VBAの概要 |
VBAの概要を理解し、プログラムの作成手順を説明できる。
|
3週 |
セルの操作と変数 |
セルの操作方法や変数の使い方を理解し、簡単な計算を行うプログラムを作成できる。
|
4週 |
簡単な計算とプログラムの流れ |
プログラムの流れ図について説明でき、算術演算子と組み込み関数を用いた簡単なプログラムを作成できる。
|
5週 |
分岐処理 |
If文の使い方を理解し、簡単な条件分岐を行うプログラムを作成できる。
|
6週 |
繰り返し処理 |
For文の基本的な使い方と処理の流れを理解し、簡単な繰り返し処理を行うプログラムを作成できる。
|
7週 |
簡単な数値計算 |
これまでの学習内容を応用して、級数計算やモンテカルロ・シミュレーションのプログラムを作成できる。
|
8週 |
【中間試験】 |
これまでの学習内容に関する試験問題を解くことができる。
|
2ndQ |
9週 |
配列(1) |
1次元配列の概念を理解し、使い方を習得する。
|
10週 |
配列(2) |
1次元配列を処理する分岐・繰り返しを用いたプログラムを作成できる。
|
11週 |
配列(3) |
2次元配列を処理するプログラムを作成できる。
|
12週 |
サブプロシージャ |
サブプロシージャの概念について理解し、プログラムの処理の流れについて確認・説明できる。
|
13週 |
ファンクションプロシージャ |
ファンクションプロシージャを用いた簡単なプログラムを作成できる。セルから関数を呼び出すことができる。
|
14週 |
物理化学計算(1) |
セルにアクセスする計算プログラムを作成できる。
|
15週 |
物理化学計算(2) |
フォームコントロールを配置して簡単な計算プログラムを作成できる。
|
16週 |
【答案返却】 |
期末試験で不正解だった箇所を解き直し、正解を得ることができる。
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 3 | |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 3 | |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 3 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 70 | 0 | 0 | 0 | 30 | 0 | 100 |
基礎的能力 | 35 | 0 | 0 | 0 | 15 | 0 | 50 |
専門的能力 | 35 | 0 | 0 | 0 | 15 | 0 | 50 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |