到達目標
1. 基本的な操作(条件文,繰り返し文,配列等)を使い,これを含むプログラムが記述できる.
2. プロシージャ(または,関数,サブルーチンなど)の概念を理解し,これを含むプログラムを記述できる.
3. ポインタやファイルの入出力の概念を理解し,これらを含むプログラムを記述できる.
4. 構造体の概念を理解し,これを含むプログラムを記述できる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | 未知の課題に対して,適切に操作を組み合わせてプログラムを記述できる. | 講義の例と類似した課題に対し,基本的な操作を用いてプログラムを記述できる. | 基本的な操作を用いてプログラムを記述できない. |
評価項目2 | 未知の課題に対して,適切なユーザ関数を定義し,利用するプログラムを記述できる. | 講義の例と類似した課題に対し,ユーザ関数を定義し,利用するプログラムを記述できる. | ユーザ関数の概念が理解できず,ユーザ関数の定義や利用するプログラムを記述できない. |
評価項目3 | 未知の課題に対して,適切にポインタやファイルの入出力を用いるプログラムを記述できる. | 講義の例と類似した課題に対し,ポインタやファイルの入出力を用いるプログラムを記述できる. | ポインタや構造体の概念が理解できず,ポインタやファイルの入出力を利用するプログラムを記述できない. |
評価項目4 | 未知の課題に対して,適切に構造体を用いるプログラムを記述できる. | 講義の例と類似した課題に対し,構造体を用いるプログラムを記述できる. | ファイルの入出力の概念が理解できず,構造体を利用するプログラムを記述できない. |
学科の到達目標項目との関係
函館高専教育目標 B
説明
閉じる
函館高専教育目標 C
説明
閉じる
教育方法等
概要:
プログラミングとは平易に表現すると「人間の考えた通りの処理をコンピュータに行わせるために,コンピュータに指示を与えること」である.人間に対して指示を与えるためには,言語(例えば日本語)を使用して話しかける.同様にコンピュータに対しては『プログラミング言語』を用いて指示を行う.本講義ではプログラミング言語の1つであるC言語の文法を学ぶ.ユーザ関数,ポインタ,構造体,ファイルの入出力を理解し,それらを活用した簡単なプログラムを独力で作成できるようになることが到達レベルである.
授業の進め方・方法:
1回の授業2時間のうち前半は教室での座学,半はコンピュータを使用して実際にプログラムを作成する演習を行う.
後半の演習については、「成果品・実技」の達成度評価となる.演習問題の採点基準は以下のとおりとする.
①その授業時間内に教員のチェックを受け、正しいプログラムを提出できた。 … 100点
②次回の授業日前日17:00までに正しいプログラムを提出できた。 … 80点
③演習担当教員が定めるその期の提出締切日までに正しいプログラムが提出できた。 … 60点
④③の提出締切日までに正しいプログラムの提出ができなかった。 … 0点
③の期間については、提出したプログラムに間違いがある場合は指摘するので、完成するまで何度でも提出可能とする.
注意点:
1回の授業2時間のうち前半は教室での座学,半はコンピュータを使用して実際にプログラムを作成する演習を行う.
後半の演習については、「成果品・実技」の達成度評価となる.演習問題の採点基準は以下のとおりとする.
①その授業時間内に教員のチェックを受け、正しいプログラムを提出できた。 … 100点
②次回の授業日前日17:00までに正しいプログラムを提出できた。 … 80点
③演習担当教員が定めるその期の提出締切日までに正しいプログラムが提出できた。 … 60点
④③の提出締切日までに正しいプログラムの提出ができなかった。 … 0点
③の期間については、提出したプログラムに間違いがある場合は指摘するので、完成するまで何度でも提出可能とする.
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
ガイダンス (0.5h) プログラミング入門の復習 (5.5h) scanf関数, printf関数, if文, switch文を用いたプログラム作成の復習 for文, while文の復習 |
授業の進め方,年間計画を理解する。 scanf関数, printf関数, if文, switch文を用いてプログラムを正しく作成できる。 for文, while文を用いてプログラムを正しく作成できる。
|
2週 |
プログラミング入門の復習 (5.5h) scanf関数, printf関数, if文, switch文を用いたプログラム作成の復習 for文, while文の復習 |
scanf関数, printf関数, if文, switch文を用いてプログラムを正しく作成できる。
|
3週 |
プログラミング入門の復習 (5.5h) scanf関数, printf関数, if文, switch文を用いたプログラム作成の復習 for文, while文の復習 |
scanf関数, printf関数, if文, switch文を用いてプログラムを正しく作成できる。
|
4週 |
else-if文、if文のネスト、2重ループ (コア) |
if - else if - else文を使用することができる。if文、for文のネストを使用することができる。
|
5週 |
文字列 (コア) |
配列を用いて文字列を扱うことができる。
|
6週 |
2次元配列 (コア) |
2次元配列を用いて正しいプログラムを作成できる。
|
7週 |
まとめ (2h) |
復習をかねて今までの知識でプログラムを作成する。
|
8週 |
前期中間試験 |
|
2ndQ |
9週 |
答案返却・解答解説 (1h) ユーザ関数 (コア) ・ユーザ関数の定義 (1h) |
間違った問題の正答を理解できる。 ユーザ関数を定義し、呼び出すプログラムを作成できる。
|
10週 |
・引数のあるユーザ関数 |
引数のあるユーザ関数を用いてプログラムを作成できる。
|
11週 |
・戻り値のあるユーザ関数 |
戻り値のあるユーザ関数を用いてプログラムを作成できる。
|
12週 |
・配列を引数としたユーザ関数 |
配列を引数として持つユーザ関数を作成し、利用できる。
|
13週 |
標準ライブラリ関数 |
三角関数などの標準ライブラリ関数を利用して,主に数学に関するプログラムを作成できる。
|
14週 |
まとめ |
今までの知識で正しいプログラムを作成できる。
|
15週 |
前期期末試験 |
|
16週 |
試験答案返却・解答解説 復習問題 (1h) |
間違った問題の正答を求めることができる 復習問題を理解し、正しいプログラムを作成できる。
|
後期 |
3rdQ |
1週 |
ポインタ ポインタの概念 |
アドレスに関する基本概念が理解できる。
|
2週 |
ポインタの使用例 |
ポインタを使う意味を理解し、利用できる。
|
3週 |
ユーザ関数への利用 |
ユーザ関数の引数にポインタを使用できる。
|
4週 |
ポインタと配列 |
配列とアドレスの関係を理解できる。
|
5週 |
ポインタと文字列 |
ポインタを利用した文字列を理解し、利用できる。
|
6週 |
ファイルの入出力 ファイルの書き込み、読み込み |
プログラムでファイルの読み書きができる。
|
7週 |
ファイル操作を用いたデータの処理 |
計算結果をファイルに書き込んだり、ファイルからデータを読み込んでプログラムで計算したりすることができる。
|
8週 |
後期中間試験 |
|
4thQ |
9週 |
テストの解答 (1h) 構造体 ・構造体の概念 (1h) |
間違った問題の正答を理解できる。
構造体のメリットを理解できる。
|
10週 |
構造体の利用 |
構造体変数の入出力を用いてプログラムを作成できる。
|
11週 |
構造体の配列 |
構造体の配列を用いてプログラムを作成できる。
|
12週 |
ユーザ関数の引数に構造体を利用 |
引数に構造体を利用したユーザ関数を用いてプログラムを作成できる。
|
13週 |
構造体へのポインタ |
ユーザ関数の引数に構造体へのポインタを利用できる。
|
14週 |
まとめ |
|
15週 |
学年末試験 |
|
16週 |
試験答案返却・解答解説 |
・間違った問題の正答を求めることができる
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 数値計算の基礎が理解できる | 3 | |
コンピュータにおける初歩的な演算の仕組みを理解できる。 | 1 | |
データの型とデータ構造が理解できる | 3 | |
専門的能力 | 分野別の専門工学 | 機械系分野 | 情報処理 | 一次元配列を使ったプログラムを作成できる。 | 4 | |
二次元配列を使ったプログラムを作成できる。 | 3 | |
電気・電子系分野 | 情報 | 基本的なアルゴリズムを理解し、図式表現できる。 | 2 | |
プログラミング言語を用いて基本的なプログラミングができる。 | 3 | |
情報系分野 | プログラミング | プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 2 | |
分野別の工学実験・実習能力 | 情報系分野【実験・実習能力】 | 情報系【実験・実習】 | 与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。 | 2 | |
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。 | 2 | |
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。 | 2 | |
評価割合
| 試験 | 発表 | 相互評価 | 成果品・実技 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 50 | 0 | 0 | 50 | 0 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 50 | 0 | 0 | 50 | 0 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |