評価項目1. 基礎的なプログラムを作成できる。
評価項目2. 計算機を用いて数学的な処理を行うことができる。
評価項目3. 基礎的なアルゴリズムについて理解し、任意のプログラミング言語を用いて記述できる。
評価項目4. 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。
概要:
1.様々なアルゴリズムについて学習する.
2.学習したアルゴリズムをPythonを用いたプログラムとして作成する.
授業の進め方・方法:
1.アルゴリズムに関する資料は配布する.
2.Pythonの復習用として,情報処理IおよびIIで用いた教科書を使用する.
注意点:
PCを使った演習が多いため、PCを使い慣れていない場合は、空き時間等も利用してできるだけ早くPC操作に慣れること.
また,毎回資料を配布するので,紛失しないようにファイリングしておくこと,授業時間中に作成しきれなかった演習問題のプログラムは空き時間を利用して作成すること.
|
|
週 |
授業内容 |
週ごとの到達目標 |
| 前期 |
| 1stQ |
| 1週 |
ガイダンス・Pythonによるプログラミングの復習 |
Phthonを用いたプログラムを作成することができる.
|
| 2週 |
順位付け1 |
N個の整数について,順位付けのプログラムが作成できる.また,処理数を減らすようなアルゴリズムについて理解できる.素因数分解のプログラムが作成できる.
|
| 3週 |
順位付け2 |
N個の整数について,順位付けのプログラムが作成できる.また,処理数を減らすようなアルゴリズムについて理解できる.素因数分解のプログラムが作成できる.
|
| 4週 |
再帰(階乗,組み合わせ),ソート |
再帰を用いて,階乗,組み合わせのプログラムを作成することができる.
|
| 5週 |
ソート(直接選択法,バブルソート,シェーカーソート,基本挿入法,シェルソート,クイックソート)1 |
ソートの各種アルゴリズムを理解し,プログラムを作成できる.
|
| 6週 |
ソート(直接選択法,バブルソート,シェーカーソート,基本挿入法,シェルソート,クイックソート)2 |
ソートの各種アルゴリズムを理解し,プログラムを作成できる.
|
| 7週 |
ソート(直接選択法,バブルソート,シェーカーソート,基本挿入法,シェルソート,クイックソート)3 |
ソートの各種アルゴリズムを理解し,プログラムを作成できる.
|
| 8週 |
中間試験 |
試験受験
|
| 2ndQ |
| 9週 |
答案返却・解説
|
答案の返却および解説
|
| 10週 |
非線形方程式の解法1 |
2分法とニュートン法によるプログラムが作成できる.
|
| 11週 |
非線形方程式の解法2 |
2分法とニュートン法によるプログラムが作成できる.
|
| 12週 |
知的データベース |
決定木(二分木)を用いた知的データベースのプログラムを作成することができる.
|
| 13週 |
パズルゲーム(戦略を持つじゃんけん)1 |
対戦するたびに相手のくせを読み強くなるじゃんけんプログラムを作成することができる.
|
| 14週 |
パズルゲーム(戦略を持つじゃんけん)2 |
対戦するたびに相手のくせを読み強くなるじゃんけんプログラムを作成することができる.
|
| 15週 |
試験実施 |
試験受験
|
| 16週 |
答案返却・解説
|
答案の返却および解説
|
| 分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
| 基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 基礎的なプログラムを作成できる。 | 3 | 前1,前2,前3,前4,前5,前6,前7,前10,前11,前12,前13,前14 |
| 計算機を用いて数学的な処理を行うことができる。 | 3 | 前1,前2,前3,前4,前5,前6,前7,前10,前11,前12,前13,前14 |
| 基礎的なアルゴリズムについて理解し、任意のプログラミング言語を用いて記述できる。 | 3 | 前2,前3,前4,前5,前6,前7,前10,前11,前12,前13,前14 |
| 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。 | 3 | 前5,前6,前7,前10,前11 |