概要:
プログラミングを実際に作成することで,ソフトウェアの動作原理を理解する.具体的にはC言語を扱うが,他の言語であっても応用が効くように汎用的なプログラミング言語の知識習得を目指す.
得に,構造化プログラミングの基本を学ぶとともに,メモリ管理の原理を理解する.
授業の進め方・方法:
演習を中心に授業を進める.配布したプリントを理解し,課題を解くことでプログラミングスキル向上を目指す,わからないことがあれば,教科書を使い自分自身で調べることが大切である.
注意点:
「プログラミング基礎IA」の授業と連動している.対象となる問題を理解し,適切な処理内容に置き換える能力を身に付けること.さらに,その処理内容をプログラムとして実装することができる能力を身に付けること.各種プログラム開発ツールは十分に使いこなせるようにすること.課題についてよく考え,手を動かし,プログラムを自らの力で作成できる能力を身につけること.
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
UNIXコマンドを用いて、プログラム開発が行えるようにプログラム開発ツールやEmacsエディタの使い方を理解する。 |
UNIXコマンドの使い方がわかる.
|
2週 |
UNIXコマンドを用いて、プログラム開発が行えるようにプログラム開発ツールやEmacsエディタの使い方を理解する。 |
UNIXコマンドの使い方がわかる.
|
3週 |
プログラムの基本である、連接、選択、反復を復習し、使いこなせるように理解する。 |
連接、選択、反復を説明できる.
|
4週 |
プログラムの基本である、連接、選択、反復を復習し、使いこなせるように理解する。 |
連接、選択、反復を説明できる.
|
5週 |
1次元配列と2次元配列の違いを理解し、配列の初期化と反復の用い方を理解する。 |
配列を使える.
|
6週 |
1次元配列と2次元配列の違いを理解し、配列の初期化と反復の用い方を理解する。 |
配列を使える.
|
7週 |
乱数の生成方法について学ぶ。 |
乱数を扱える.
|
8週 |
前期中間試験 |
前期中間試験までの学習内容
|
2ndQ |
9週 |
関数について学び、戻り値あり、戻り値なしの関数について理解する。 |
関数がわかる.
|
10週 |
関数について学び、戻り値あり、戻り値なしの関数について理解する。 |
関数がわかる.
|
11週 |
関数について学び、戻り値あり、戻り値なしの関数について理解する。 |
関数がわかる.
|
12週 |
文字列の扱い方を学ぶ。 |
文字列を扱うことができる.
|
13週 |
文字列の扱い方を学ぶ。 |
文字列を扱うことができる.
|
14週 |
応用プログラムとしてテキストベースのゲームを作成する. |
ゲームを作成するための設計ができる.
|
15週 |
応用プログラムとしてテキストベースのゲームを作成する. |
前期定期試験までの学習内容
|
16週 |
前期定期試験解説 |
前期定期試験解説
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 変数の概念を説明できる。 | 4 | |
データ型の概念を説明できる。 | 4 | |
代入や演算子の概念を理解し、式を記述できる。 | 4 | |
制御構造の概念を理解し、条件分岐を記述できる。 | 4 | |
制御構造の概念を理解し、反復処理を記述できる。 | 4 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 4 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 4 | |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 4 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 4 | |
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。 | 4 | |
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。 | 4 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 4 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。 | 4 | |
その他の学習内容 | 少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。 | 4 | |
分野別の工学実験・実習能力 | 情報系分野【実験・実習能力】 | 情報系【実験・実習】 | 標準的な開発ツールを用いてプログラミングするための開発環境構築ができる。 | 4 | |
要求仕様にあったソフトウェア(アプリケーション)を構築するために必要なツールや開発環境を構築することができる。 | 4 | |
要求仕様に従って標準的な手法によりプログラムを設計し、適切な実行結果を得ることができる。 | 4 | |
分野横断的能力 | 総合的な学習経験と創造的思考力 | 総合的な学習経験と創造的思考力 | 総合的な学習経験と創造的思考力 | 工学的な課題を論理的・合理的な方法で明確化できる。 | 3 | |
公衆の健康、安全、文化、社会、環境への影響などの多様な観点から課題解決のために配慮すべきことを認識している。 | 3 | |