年度 | 2009 |
---|---|
科目名 | アルゴリズムとデータ構造(S) |
教員名 | 関 哲朗 |
授業概要 | ソフトウエアには良いソフトウエアと悪いソフトウエアがあります.現在では,コンピュータ・ハードウエアの性能が向上し,高速なCPU,大容量の記憶装置が出現し,良いソフトウエアの条件は以前とはずいぶん変わってきました.一方で,プログラムを美しく書くためのアルゴリズムの必要性は,以前から全く変わっていません.本講義では,コンピュータの基本的な演算の考え方から,プログラミングの基礎となる計算手順やデータの扱いについて学習を進めていきます. |
授業計画 | ガイダンス この講義の計画と概要をお話しします. ※以下の計画は,進捗によって前週の内容に触れたり,変更になることがあ ります. 構造化定理と構造化プログラミング この講義はプログラミングの授業ではありません.一方で,アルゴリズムを何らかの方法で実現し,その動作を確認することは大切なことです.本講義では,「順次」,「反復」,「分岐」といった,基本的な仕組みによってアルゴリズムをシンプルに表現することの基本として構造化の概念を学び,その実現手段としてExcel VBAの必要最小限の機能を学びます. 構造化プログラミングの演習 その1 Excel BVAを用いて基本的なアルゴリズムを記述する練習をします. 2回の演習で,数当てゲームを作ってみましょう. 構造化プログラミングの演習 その2 第3回の続きです. n進数の考え方 10進数以外のn進数の考え方と,相互の変換の仕方を学びます.あわせて,2進数がコンピュータで採用されている意味を考えましょう. 剰余の計算と演習 剰余(商が整数となる割り算の余り)の求め方を知り,10進数とn進数を相互に変換するアルゴリズムを記述してみましょう. 数式の表現方法とスタック 電卓やコンピュータで用いられる数式の表現方法である逆ポーランド記法を学びます.また,あわせてスタックの考え方について概説します. 文字列の操作と演習 文字列の簡単な操作方法を学び,逆ポーランド記法への変換アルゴリズムを記述してみましょう. 並べ替えの方法(ソート)と演習 その1 バブルソートなどの基本的な並べ替えの方法を学びます. 並べ替えの方法(ソート)と演習 その2 第9回の続きです. 再帰の考え方と演習 その1 関数を導入し再帰の考え方を学びます. 再帰の考え方と演習 その2 第11回の続きです. 総合演習1 総合演習2 この講義のまとめ |
評価方法 | 出席や演習の状況と期末試験の成績を総合的に評価します. |
教科書 | |
参考書 | |
メッセージ | 本講義の内容はとてもオーソドックスなものです.ソフトウエアを勉強したと言う人であれば,誰でもが取り組んだことのある内容ではないかと思います.プログラミングやデータベースなど,計算やデータ操作に関連のある科目を履修していたほうが,具体的なイメージがわきやすいのではないかと思いますが,事前知識が無くても大丈夫ではないかと思います. |