(1) プログラミングにおける基本的な構成のプログラムをC言語により記述できること.基本的なデータ構造を扱う応用プログラムの内容を理解できること.
(2) プログラミング演習において、問題解決方法策の企画・実践およびコンピュータが実現できる論理的思考ができること.また、与えられた課題を決められた期限までに導き、提出できること.
1.変数の扱い,標準入出力,制御文(分岐・反復)を含むプログラミングができる。
2.ユーザ定義関数・配列・ポインタを使用したプログラミングができる。
3.値渡しとアドレス渡し,配列とポインタの関係を意識したプログラミングができる。
概要:
アルゴリズムの基本となる構造を学び,プログラミング言語によってプログラムを記述することにより,プログラミングの基礎を学習する.
授業の進め方・方法:
この授業では,プログラミングを行う時の基礎的な諸事項(データの表現,変数,演算,制御構造,関数,配列,ポインタなど)を講義とともに,実際にコンピュータ上でプログラムを作成し実行する過程を通して学習する.これらの知識をもとに,問題を論理的に構成し,コンピュータが実行可能なプログラムの形で表現し,問題を解決する考え方を習得する.
注意点:
講義時の授業態度および講義への遅刻に対して減点を課す場合がある.
評価方法:学年成績(100)=定期試験点(75)+課題点(25)
評価基準:60点以上を合格合格とする
本科(準学士課程):RB2(◎)
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
概論・講義 |
シラバスの説明,ガイダンス,計算機の基本構成,プログラムとアルゴリズム の内容を理解できる.同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを理解する.
|
2週 |
プログラムの基本形・講義と演習 |
C言語のプログラムとプログラムの型について理解し,プログラムの実行ができる.
|
3週 |
基本データと数・講義と演習 |
変数と数値,変数の型,入力と出力,基本的な計算を理解し,与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる.
|
4週 |
数学的関数・講義と演習 |
数学ライブラリ関数を用いた基本的な問題を解くための適切なアルゴリズムを構築することができ,プログラムを作成し実行できる.
|
5週 |
分岐構造(判断)1・講義と演習 |
if文による2方向分岐のプログラムを作成し,構築したアルゴリズムを実装できる.
|
6週 |
分岐構造(判断)2・講義と演習 |
if〜else,if〜else if〜elseによる多方向分岐のプログラムを作成し,構築したアルゴリズムを実装できる.
|
7週 |
分岐構造(判断)3・講義と演習 |
switchによる多方向分岐のプログラムを作成し,構築したアルゴリズムを実装できる.
|
8週 |
前期中間学力確認 |
|
2ndQ |
9週 |
反復構造(繰り返し)1・講義と演習 |
実行表を作成することができ,反復処理の基本的な問題を解くための適切なアルゴリズムを構築することができる.
|
10週 |
反復構造(繰り返し)2・講義と演習 |
while,do〜whileによる反復構造のプログラムを作成し,構築したアルゴリズムを実装できる.
|
11週 |
反復構造(繰り返し)3・講義と演習 |
forによる反復構造のプログラムを作成し,構築したアルゴリズムを実装できる.
|
12週 |
反復構造(繰り返し)4・講義と演習 |
反復構造の問題に対し,それを解決できる複数のアルゴリズムを持つ応用プログラムを作成し,構築したアルゴリズムを実装できる.
|
13週 |
疑似乱数1・講義と演習 |
疑似乱数について,基本的な問題を解くための適切なアルゴリズムを構築することができる.
|
14週 |
疑似乱数2・講義と演習 |
疑似乱数を用いたプログラムを作成し,構築したアルゴリズムを実装できる.
|
15週 |
応用プログラム |
応用的な総合演習プログラムを作成し,構築したアルゴリズムを実装できる.
|
16週 |
前期期末試験 |
|
後期 |
3rdQ |
1週 |
前期の復習・関数(値渡し)1 |
前期の内容が説明できる.関数の定義,関数の利用について理解できる.
|
2週 |
関数(値渡し)2 |
関数の定義,関数を用いた基本的な問題を解くための適切なアルゴリズムを構築することができ,プログラムを作成できる.
|
3週 |
関数(値渡し)3 |
関数の高度な利用,関数の再帰呼び出しのプログラムが作成し,構築したアルゴリズムを実装できる.
|
4週 |
配列1・講義と演習 |
1次元配列を用いた基本的な問題を解くための適切なアルゴリズムを構築することができ,プログラムを作成できる.
|
5週 |
配列2・講義と演習 |
2次元配列を用いた基本的な問題を解くための適切なアルゴリズムを構築することができ,プログラムを作成できる.
|
6週 |
配列3・講義と演習 |
配列を用いた演習プログラムを作成し,構築したアルゴリズムを実装できる.
|
7週 |
文字処理 ・講義と演習 |
文字と文字列.文字列と配列を用いた基本的な問題を解くための適切なアルゴリズムを構築することができ,プログラムを作成できる.
|
8週 |
後期中間学力確認 |
|
4thQ |
9週 |
ポインタ1・講義と演習 |
ポインタの基礎について理解できる.同一の問題に対し,それを解決できる複数のアルゴリズムが存在しうることを知っている.
|
10週 |
ポインタ2・講義と演習 |
ポインタを用いた基本的な問題を解くための適切なアルゴリズムを構築することができ,プログラムを作成できる.
|
11週 |
ポインタ2・講義と演習 |
ポインタを用いた応用プログラムを作成し,構築したアルゴリズムを実装できる.
|
12週 |
ポインタ2・講義と演習 |
配列とポインタの関係について理解できる.同一の問題を解決する複数のアルゴリズムが存在することを知っている.
|
13週 |
関数とポインタ1・講義と演習 |
関数とポインタに関する基本的な問題を解くための適切なアルゴリズムを構築することができ,プログラムを作成できる.
|
14週 |
関数とポインタ2・講義と演習 |
関数と配列に関するプログラムを作成し,構築したアルゴリズムを実装できる.
|
15週 |
関数と引数,ファイル処理 ・講義 |
局所変数と大域変数について理解できる.ファイルの入出力 方法を理解できる.
|
16週 |
学年末試験 |
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 3 | 前1,前12,後9,後12 |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 3 | 前3,前4,前9,前13,後4,後5,後7,後10,後13 |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 3 | 前5,前6,前7,前10,前11,前12,前14,前15,後3,後6,後11,後14 |