プログラミング基礎

授業科目区分

学部共通専門科目
数理情報系
選択 2単位 1年次 後期


教職課程選択/

担当教員

安藤 友晴

履修に必要な予備知識や技能

特になし。

履修条件

特になし。

その他この科目を履修するために必要な条件

特になし。

学習教育の目標

 私たちがある問題を解決するためにコンピュータを利用するとき、既存のハードウェアやソフトウェアだけではその問題を解決できないならば、自らプログラムを作成しなければならない。プログラムを作成することがプログラミングである。プログラミングは、コンピュータで表現したいことの手順やしくみを表現する行為である。  この授業では、Scalaというプログラミング言語を用いて、プログラミングの初歩について学ぶ。授業の目標は4つある。 ・基本的なアルゴリズム(問題を解くための手法のこと)を習得する。 ・アルゴリズムを記述するために必要な概念を習得する。 ・プログラミング言語を利用してアルゴリズムを記述できるようにする。 ・プログラミング言語を用いてものごとを厳密に表現するための数学的思考能力を涵養する。

授業の簡単な概要

 変数・型・制御構造・関数など、プログラミングを行ううえでの必要な道具の順に紹介しつつ、基本的なアルゴリズムについて学んでいく。なお、授業は「プログラミング実習」と連続して行う。

学習支援

・連続して行われる「プログラミング実習」においても、授業内容の疑問点を解決できる。 ・LMS上の教材で復習することが望まれる。 ・LMS上のフォーラムを利用されたい。

オフィスアワー

毎週月曜日の5時間目とする。

学習内容

  1. プログラミングの基礎概念 (プログラミングとは何か理解する)
  2. 変数と関数の利用 (変数と関数とは何か理解し、それらを用いて簡単なプログラムを作成する)
  3. 繰り返し (繰り返しの処理を書けるようにし、合計の計算などの簡単なアルゴリズムを理解する)
  4. 条件分岐 (ある条件にあてはまるときだけ実行されるプログラムを作成する)
  5. 乱数 (乱数を使って、ゲーム的な要素があるプログラムを作成する)
  6. 論理演算 (論理和・論理積・否定などを用いて、複雑な条件分岐を持つプログラムを作成する)
  7. 総合演習 (1) (これまで登場してきた概念を用いて、やや複雑なプログラムを作成する)
  8. 型 (データを管理するために必要な型の概念について理解する)
  9. リストの基本 (複数のデータをひとまとめに扱うリストを用いたプログラムを作成する)
  10. 総合演習 (2) (型やリストの知識を用いて、やや複雑なプログラムを作成する)
  11. 関数の作成 (関数の概念について復習し、自分で関数を作成できるようにする)
  12. 再帰 (1) (簡単なパズルを考えながら、再帰の概念について理解する)
  13. 再帰 (2) (再帰を用いたプログラムを作成する)
  14. 関数型プログラミング (これまでとは違った関数の応用方法を理解する)
  15. 総合演習 (3) (関数の知識を用いて、やや複雑なプログラムを作成する)

期末試験やレポートなどの留意事項

毎回の授業で課題を出すので、確実にこなしていくこと。期末試験については別に指示する。

教科書

毎回、担当教員が自作したテキストを配付する。

参考書

結城浩「プログラマの数学」ISBN: 978-4797329735

NDC

7.6

達成度評価(評価方法:合計100点)

試験:     50
レポート:   50
作品:     
成果発表:   
ポートフォリオ:
その他:

上記割合以外に注意すべき事項:

毎回の授業に出席すること。