計算機科学の重要な基礎であるプログラミングとその周辺について,機械語や論理ゲートといったレベルから様々な高水準プログラミング言語まで,また具体的な現実のプログラミング言語から理想的なプログラミング言語による計算可能性の議論までを俯瞰する。
科学技術者倫理についても議論する。
実習ではScalaによりプログラミングをおこなう。
計算機科学の基礎を身に付ける。
講義では次のような内容を解説する。
ソフトウエア。ハードウエア。手続き型プログラミング。オブジェクト指向プログラミング。関数型プログラミング。論理プログラミング。機械語。コンパイラ。whileプログラム。ホーア論理。計算可能性。科学技術者倫理。
実習では次のような内容を解説する.
条件分岐,データ構造の定義,函数定義,リスト,再帰函数
授業中に指示する。
原則として情報科学科の学部学生のみに履修を許可する。
コンピュータリテラシを履修していること。
期末試験と実習レポートによる。