到達目標
(1) アルゴリズムに関する基礎的な知識を身に付ける. (定期試験,課題)
(2) 情報科学に関連した課題を習得したアルゴリズムを利用し解決する力を身に付ける. (定期試験,課題)
(3) 与えられた課題を解決するためのアルゴリズムを流れ図により表現できる. (定期試験,課題)
(4) 演習に積極的に参加し課題を解くことによって理解を深める. (課題)
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | アルゴリズムに関する基礎的な知識を身に付けられる | アルゴリズムに関する基礎的な知識を身に付けられる | アルゴリズムに関する基礎的な知識を身に付けられない |
評価項目2 | 情報科学に関連した課題を習得したアルゴリズムを利用し解決する力を身に付けられる | 情報科学に関連した課題を習得したアルゴリズムを利用し解決する力を身に付けられる | 情報科学に関連した課題を習得したアルゴリズムを利用し解決する力を身に付けられない |
評価項目3 | 与えられた課題を解決するためのアルゴリズムを流れ図により表現できる | 与えられた課題を解決するためのアルゴリズムを流れ図により表現できる | 与えられた課題を解決するためのアルゴリズムを流れ図により表現できない |
学科の到達目標項目との関係
教育方法等
概要:
これまでに習得したC言語の知識を用い,現在計算機科学の様々な分野で使用されているアルゴリズムの中で基本的なものを学習する. まず,アルゴリズムを図で分かりやすく表現するため,流れ図の書き方を覚え,次に,整列,探索,数値計算などのアルゴリズムの学習を行う.授業は,演習を中心に行い,具体的な入力を与えて問題を解かせることによりアルゴリズムの理解を深めるようにする.
(科目情報)
関連科目 情報処理,プログラミング,コンピュータ
授業の進め方・方法:
情報演習室でのプログラミングを行うことにより理解を深めていく.最初の時間に授業項目の概要について説明した後、実際に演習室のパソコンでプログラムとレポートを作成する.Moodleを利用し、資料の配布や小テストの実施を行う.
(事前学習)
C言語の復習が必須である.
注意点:
(履修上の注意)
実際にプログラミングを行いアルゴリズムを確認するため,ブラインドタッチでのプログラミングに慣れておくこと.
(自学上の注意)
アルゴリズム途中での変数の内容を画面表示するなど,動きを理解すること.
評価
(総合評価)
総合評価=(2回の定期試験の平均点)×0.8 +(課題の平均点)×0.2
(再試験について)
再試験は総合評価が60点に満たない者に対して実施する.全課題の60%以上の提出を再試験受験資格の条件とする.
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
流れ図の描き方 |
○アルゴリズムを視覚的に捉えることができる流れ図の書き方を習得する.
|
2週 |
最大値 |
○最大値を求めるアルゴリズムを習得する.
|
3週 |
逐次探索 |
○逐次探索と二分探索を習得する.
|
4週 |
二分探索 |
○逐次探索と二分探索を習得する.
|
5週 |
二分探索 |
○逐次探索と二分探索を習得する.
|
6週 |
整列 |
○整列アルゴリズムを習得する.
|
7週 |
順位付け |
○順位付けのアルゴリズムを習得する.
|
8週 |
二分法による方程式の解 |
○二分法を用いて方程式の解を求める.
|
2ndQ |
9週 |
前期中間試験 |
|
10週 |
前期中間試験の解答と解説 ニュートン法
|
○ニュートン法の手法を用いて方程式の解を求める.
|
11週 |
様々なデータの整列 構造体
|
○効率的なプログラミングのため,データ構造の1つである構造体を学習する.
|
12週 |
様々なデータの整列 構造体
|
○効率的なプログラミングのため,データ構造の1つである構造体を学習する.
|
13週 |
様々なデータの整列 構造体
|
○効率的なプログラミングのため,データ構造の1つである構造体を学習する.
|
14週 |
様々なデータの整列 構造体
|
○効率的なプログラミングのため,データ構造の1つである構造体を学習する.
|
15週 |
前期期末試験 |
|
16週 |
前期期末試験の解答と解説 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 4 | 前2,前3,前4,前5,前6,前7,前8,前10 |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 4 | 前2,前3,前4,前5,前6,前7,前8,前10 |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 4 | 前2,前3,前4,前5,前6,前7,前8,前10 |
評価割合
| 試験 | 課題 | その他 | 合計 |
総合評価割合 | 80 | 20 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 |
専門的能力 | 80 | 20 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 |