Fundamentals of Programming

Course Information

College Tokuyama College Year 2019
Course Title Fundamentals of Programming
Course Code 0004 Course Category Specialized / Compulsory
Class Format Lecture Credits School Credit: 3
Department Department of Computer Science and Electronic Engineering Student Grade 1st
Term Year-round Classes per Week 3
Textbook and/or Teaching Materials 前期は教科書なし、後期に購入予定
Instructor Okumoto Miyuki,Miyazaki Ryoichi

Course Objectives

1.問題解決の手順を考え、フローチャートに描ける。
2.フローチャートを、Java言語のプログラムに書ける。
3.プログラムが読める。
4.プログラムを実行し、その結果を確認できる。

Rubric

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
問題解決の手順を考え、フローチャートに描ける。ほぼ正しいフローチャートが書ける。間違っている部分もあるが、一部正しく動くフローチャートが書ける。フローチャートを書いているが、正しい解が得られない。
フローチャートを、Java言語のプログラムに書ける。ほぼ正しいプログラムが書ける。間違っている部分もあるが、一部正しく動くプログラムが書ける。プログラムが書けない。
プログラムが読める。プログラムをトレースし、処理内容が説明できる。一部トレースできる。トレースできない。
プログラムを実行し、その結果を確認できる。実行し、正しい結果を確認できる。実行し、エラーが理解ででき、修正できる。実行し、エラーが修正せきない。

Assigned Department Objectives

到達目標 B 1 See Hide

Teaching Method

Outline:
ソフトウェア開発のために、次のようなプログラミング技術の基礎を修得する。
(1)コンピュータを使って問題を解く手順は1通りではない。この授業では、特に手順を考える力をつけることを目的とした授業を行う。
(2)問題を解く手順をフローチャートに表し、コンピュータで実行するためにプログラミングの方法を学 ぶ。プログラミング言語としては、現在広く普及しているJava言語を取り上げる。
(3)プログラミングの基本項目として次の項目を学ぶ。
  ・コンピュータシステムの構成 ・変数   ・入出力処理 ・条件分岐処理 ・繰り返し処理 
  ・配列   ・メソッド    ・引数機構 ・文字列処理
Style:
プログラミング習得の王道は、読んで真似ることである。従って、授業では、まず各処理に関連した例題を取り上げ、その問題のプログラミングによる解決法とサンプルプログラムを示し、詳しく説明する。次にその解決法を真似ることで解決可能な課題に対してプログラムを制作し、実習を行う。この課題は次回の授業で解答・解説する。
 4回以降の授業は講義(90分)と実習(50分)に分かれる。講義では前回の復習(小テスト)、新規学習項目とその課題を提示する。課題を解く手順をフローチャートに表し、プログラムに変換したものをレポートとして、次回実習までに提出する。実習では自分が作成したプログラムを実行し、レポートを修正する。
 毎回、授業で使用する資料(前回の課題の解答例、新規学習項目、実習課題などをまとめたもの)を配布するので、ファイルに綴じて整理する。
 教室だけでなく、実習を行うPC室でも教科書、ノート、ファイルを必ず持参すること。
 本科目は必修得科目(卒業までに必修得)である。
Notice:
 基礎コンピュータ工学(1年)、コンピュータの基礎知識(1年)、プログラミング言語(2年)、プログラミング(2年)

Course Plan

Theme Goals
1st Semester
1st Quarter
1st オリエンテーション
問題を解く手順を考える(1)
フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。
2nd 問題を解く手順を考える(2) フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。変数の概念を説明できる。 
3rd ソフトウェアの構成
プログラミング
コンピュータを動かすためのソフトウェアの存在、その種類等について学ぶ。また、コンピュータを使ってどのようにプログラムが作成され、実行されるかを実習を通して学ぶ。 
4th データ型、及び変数の型、代入文 変数、データの型、代入や演算子の概念を理解し、式を記述できる。
5th 入力処理、出力処理 入出力を理解し、プログラムが書ける。
6th 条件分岐処理(1)
if文の制御構造を理解し、プログラムに記述できる
7th 条件分岐処理(2)
if-else文の制御構造を理解し、プログラムにできる
8th 中間試験 問題解決手順をフローチャートに表す方法、入出力処理、変数、代入文、if文について理解度を問う。
2nd Quarter
9th 条件分岐処理(3)
2重のif文を用いた制御構造を理解し、プログラムに記述できる
10th 答案返却
中間試験の解答を行う。
11th for文(1) 反復処理の概念を理解し、プログラムに書ける。
12th for文(2)   反復処理の概念を理解し、プログラムに書ける。
13th for文(3) 二重のfor文の制御構造を理解し、プログラムが書ける。
14th 複雑な条件分岐と繰返し処理 複雑な問題を解く手順を考え、プログラムで処理できる。
15th 期末試験 条件分岐処理、繰返し処理を中心に、これまでに学んできた内容の理解度をみる。
16th 答案返却など 前期末試験の解答、解説を行う。
2nd Semester
3rd Quarter
1st 配列(1) 配列と添字の概念を説明できる。
2nd 配列(2) 2次元配列が使える。
3rd 配列(3) 配列に初期値を設定できる。
4th while文 while文を用いた繰返処理の制御構造が説明でき、プログラムが書ける。
5th 無限ループとbreak文 無限ループとそれから抜け出る概念を理解し、プログラムに記述できる。
6th 実数型、文字型 データ型の概念を説明できる。
7th 変数の型変換 強制的な型変換の概念を説明でき、プログラム中で使える。
8th 中間試験 配列を中心に、これまでに学んだことの理解度を問う。
4th Quarter
9th 答案返却
メソッド(1)
メソッド、仮引数、実引数とは何かが説明でき、メソッドを用いたプログラムが書ける。
10th フィールド変数 変数の概念を説明できる。
11th メソッド(2) 戻り値のないメソッドと戻り値のあるメソッドを使い分けることができる。
12th メソッド(3) メソッドへ配列を渡す方法を理解し、プログラムが書ける。
13th 文字列処理(1) Stringクラスと文字列処理メソッドが理解できる。 
14th 文字列処理(2) Stringクラスと文字列処理メソッドを用いたプログラムが書ける。
15th 期末試験 メソッドと文字列処理について理解度を問う。
16th 答案返却など 試験の解説を行う。

Evaluation Method and Weight (%)

試験レポート小テストTotal
Subtotal602020100
基礎的能力0000
専門的能力602020100
分野横断的能力0000