基礎プログラミング(Fundamentals of Programming)
本科選択・必修開設時期単位数授業形態担 当
情報電子必修1年3講義江口 賢和 高山 泰博 奥本 幸
【授業の概要】
コンピュータのプログラミングを手段として、与えられた問題を解く方法を学び、併せてプログラミング言語を習得する。プログラミング言語としては、現在広く普及しているJava言語を取り上げる。学ぶ内容は、(1)コンピュータシステムの機構 (2)入出力処理 (3)条件分岐処理 (4)繰り返し処理 (5)配列 (5)メソッド (6)引数機構 (7)文字列処理 についてである。
【授業の進め方】
プログラミング習得の王道は、読んで真似ることである。従って、授業では、まず各処理に関連した例題を取り上げ、その問題のプログラミングによる解決法とサンプルプログラムを示し、詳しく説明する。次にその例題の解決法を真似ることで解決可能な課題に対して実習を行う。この課題については次回の授業で解答を行い、新たなサンプルプログラムの実例とする。各課題の実習はレポートを次の週に提出し、提出されたレポートは添削して返却する。
【授業計画】 【授業項目】 【内 容】
1 回 ノイマン型コンピュータの構成 ノイマン型コンピュータの構成を説明し、コンピュータが如何にして問題を解決しているかを知る。
2 回 ソフトウェアの構成 コンピュータを動かすためのソフトウェアの存在、その種類等について学ぶ。
3 回 ソフトウェアの作成手順 プログラミング言語の種類、特徴、及び処理過程を示す。また、アルゴリズムの記述法としてフローチャートを取り上げ、記述法を示す。
4 回 フローチャートによるアルゴリズムの理解 いろいろな例題を取り上げ、問題解決のアルゴリズムをフローチャートで示し、アルゴリズムとはどのようなものかを理解させる。
5 回 フローチャートによる問題解決法の理解 より高度な例題についてフローチャートによるアルゴリズムを提示し、問題解決のノウハウを理解させる。
6 回 コンピュータによるプログラミング作成法 コンピュータを使ってどのようにプログラムが作成され、実行されるかを実習を通して理解させる。
7 回 出力処理のプログラム Java言語での出力処理のプログラム例を取り上げ、プログラムによる出力処理を理解させる。
8 回 中間試験 ここまでに学んできた内容に関連した問題を出し、理解度をみる。
9 回 中間試験の解答、及び課題による実習 中間試験の解答を行う。試験問題に関連した課題について実習を行う。
10 回 入力処理のプログラム Java言語での入力処理のプログラム例を取り上げ、プログラムによる入力処理を理解させる。
11 回 データ型、及び変数の型について 整数型、実数型等コンピュータで取り扱うデータには型があり、それを記憶する変数にも型があることを理解させる。
12 回 代入文の使用法 コンピュータ内部での計算処理の記述としての算術式や代入文の書き方、及びその構成要素である演算子の種類や結合の優先順位等について理解させる。
13 回 条件分岐処理(if文、if〜else文)の使い方 条件分岐処理の必要性を理解させ、条件式の書き方、及び比較演算子の種類等について理解させる。また、複文の必要性を理解させる。
14 回 繰り返し処理(while文、do〜while文)の使い方 繰り返し処理を使った例題を示し、繰り返し処理の必要性を理解させる。
期末試験 分岐処理、繰り返し処理を中心に、ここまでに学んできた内容に関連した問題を出し、理解度をみる。
15 回 答案返却など 前期末試験の解答、解説を行う。
16 回 繰り返し処理(while文、do〜while文)の使い方 繰り返し処理には前判定と後判定の必要性を説明し、do〜while文の使用法を理解させる。
17 回 繰り返し処理(for文)の使い方 for文の特徴を説明し、そのような形の繰り返し処理を行う例題を用いて使用法を理解させる。
18 回 多分岐処理(switch文)の使い方 多分岐処理の表現法としてswitch文の利用法を理解させる。
19 回 参照型変数の使い方(配列型)

多数のデータを取り扱う場合の配列の使用を示し、配列の使い方を理解させる。
20 回 ソートアルゴリズムについて 代表的なソートアルゴリズムを例題として取り上げ、アルゴリズムを通して問題解決の方法を学び、併せて配列処理の方法を理解させる。
21 回 メソッド、及び引数受渡しについて メソッドの意味を理解させ、メソッドによるプログラミング技法を理解させる。
22 回 複数のメソッドを定義してのプログラミング技法(1ヶ月カレンダーの作成) 1ヶ月のカレンダー表示を行うメソッドを作成させ、引数による値渡しやメソッドによるプログラミングを理解させる。
23 回 中間試験 配列、メソッドを中心に、今まで学んできた知識を基にしたプログラミング技術の理解度を問う。
24 回 中間試験の解答、及び課題による実習 中間試験の解答を行う。試験問題に関連した課題について実習を行う。
25 回 複数のメソッドを定義してのプログラミング技法(万年カレンダーの作成1)万年カレンダー2 x,yを入力し、x年y月のカレンダーを出力するプログラムを作成し、大きなプログラムの作成法を学ぶ。
26 回 複数のメソッドを定義してのプログラミング技法(万年カレンダーの作成2) 万年カレンダーを完成させる。
27 回 参照型変数の使い方(String型) 文字列の表現法、処理法等について学ぶ。
28 回 総合演習1 今まで学んだ内容の総復習を行う。
29 回 総合演習2 今まで学んだ内容の総復習を行う。
期末試験 1年間で学んだ内容を総合的に問う。
30 回 答案返却など 試験の解説を行う。
【到達目標】問題解決の手順がフローチャートに描ける。
50ステップ程度のJava言語によるプログラミングができる。
【徳山高専学習・教育目標】B1【JABEE基準1(1)】
【評価法】定期試験(60%)、レポート提出などの学習状況(40%)で評価する。
【テキスト】改訂 新Java言語入門 ビギナー編 林晴比古著(ソフトバンク)
【関連科目】基礎コンピュータ工学(1年)、コンピュータの基礎知識(1年)