授業科目

情報技術
Programming Language 

担当者

教授   能登 正人
前 月3/火3

単位

2

到達目標

本講義の到達目標は、受講生が、コンピュータの基礎知識を修得することにより、基本的なプログラム作成スキルを身につけることである。

授業内容

本講義では、特定のプログラミング言語にとらわれずに言語の基本的な概念を整理し、さまざまな言語機能について学習する。ただし、授業の理解度を高めるために、実際に使用されているプログラミング言語を適宜用いて講義を行う。また、プログラミング言語を学習する上で必要となるコンピュータの基礎事項についても、「情報技術Ⅰ」の復習も兼ねて講義を行う。

授業計画

各回の講義内容は一応次のように予定しているが、時間の関係で若干前後する場合もある。毎回の講義の最後に次回の講義内容について予告するので、予習として、市販の参考書やウェブなどで調べておくことを勧める。また、復習としては、自分なりのノートを作成することにより、講義で理解できた点・理解できなかった点を整理し、理解できなかった点は、次回の講義までに理解しておくことが望ましい。なお、予習・復習合わせて各回あたり約4時間の自己学習を想定している。

01. ガイダンス
シラバスの記載事項について確認する。
02. コンピュータの基礎
コンピュータに関する基本的事項とコンピュータ内部でのデータの表現方法について学ぶ。
03. プログラミングの基礎
言語処理系の種類や「型」の概念を説明し、プログラミングに必要な知識・基本概念について学習する。
04. 基本制御構造と手続き・関数
分岐処理および反復処理について解説する。さらに、手続きと関数の特徴や使い方についても学ぶ。
05. 再帰と反復
再帰の考え方を「ハノイの塔」や「階乗の計算」などの例題を用いて説明する。
06. 配列
一次元や二次元以上の多次元配列について、どのようにデータが扱われているかを学ぶ。
07. データ構造 (1)
「配列」や「リスト」について説明し、それぞれの特徴を学習する。
08. アルゴリズム (1)
アルゴリズムについて概説し、計算量(オーダ)の基本概念を学ぶ。
09. アルゴリズム (2)
種々のソートアルゴリズムについて学ぶ。
10. アルゴリズム (3)
「ユークリッドの互除法」や「エラトステネスのふるい」などの具体的な各アルゴリズムについて学習する。
11. ポインタ
いくつかの例題を用いて、難解な概念をなるべく平易に解説する。
12. 構造体
変数および配列との相違点について説明し、例題プログラムを用いて解説する。
13. データ構造 (2)
「スタック」や「キュー」について説明し、それぞれの特徴を学習する。
14. 総括
全14回の授業を振り返り、今後の学習についてアドバイスをする。

授業運営

プロジェクタによる講義を主体とし、必要に応じて演習を行う。授業で使用する例題プログラムの一部は、「dotCampus」でサンプルプログラムを配布するので、ダウンロードしプリントアウトして講義に持参すること。また、「プログラミング演習」はコンピュータを使用した演習であり、この授業と密接に関わっているので、両方の授業を通して効果的に学習することが望ましい。

評価方法

ある問題を解くためのアルゴリズムが理解でき、プログラミングに必要な基本的概念を身につけることが重要である。この観点から、定期試験を7割、定期試験以外の平常点(小テスト、課題提出など)を3割として評価する。詳しくは、ガイダンスで説明する。なお、遅刻・早退は欠席として扱うので、遅刻や早退がないように心がけること。

オフィスアワー

質問がある場合は、毎回の授業終了後または月曜日5時限目に、居室(23-616)か研究室(23-619)で受け付けるが、それ以外の曜日・時限でも対応可能

使用書

市販のテキストは使用せず、オリジナルの資料を用いて授業を行う。なお、ガイダンス時に参考書を紹介するので、補助教材として活用していただきたい。

Copyright© 2017 Kanagawa University. All Rights Reserved.