情報処理

科目基礎情報

学校 旭川工業高等専門学校 開講年度 平成28年度 (2016年度)
授業科目 情報処理
科目番号 0001 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 2
開設学科 システム制御情報工学科 対象学年 2
開設期 通年 週時間数 2
教科書/教材 入門ソフトウェアシリーズ(1) C言語(著者 河西朝雄,ナツメ社)
担当教員 以後 直樹

到達目標

1.与えられた実行結果を出力可能なC言語のプログラムを記述することができる。
2.与えられた実行結果を出力可能なアルゴリズムを記述することができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1自ら考えたアルゴリズムから,そのアルゴリズムを実現できるプログラムを正確に記述し,自ら記述したプログラムの動きを正確に説明できる。与えられたアルゴリズムから,そのアルゴリズムを実現できるプログラムを記述し,自ら記述したプログラムの動きを説明できる。C言語のプログラムを自ら記述することができない。
評価項目2与えられた実行結果を出力可能なアルゴリズムを考えることができ,そのアルゴリズムの正確に説明できる。与えられた実行結果を出力可能なアルゴリズムを考えることができる。与えられた実行結果を出力可能なアルゴリズムを考えることができない。

学科の到達目標項目との関係

教育方法等

概要:
最初にプログラム作成に関連したソフトウェアの基礎知識について学ぶ。次に簡単な数値計算に関連した問題を解くプログラムを作成・実行して,C言語の文法を学ぶと共に,計算機で問題をどのように扱うか(アルゴリズム)を考える力を養う。
授業の進め方・方法:
授業総時間数の約半分程度を演習に当て,簡単なアルゴリズムを組み合わせた課題を与える。課題を解くためには,自分でプログラムを作り,エラーが出たときはその原因を考えることが重要であり,他人のプログラムをコピーしても力は付かない。演習等で作成したソースプログラムのリスト及び実行結果は,プリンタに出力してレポートとして提出する。
注意点:
科目の性質上,後の試験は前回までの試験範囲を全て含むことになるため,前回の内容を理解する必要がある。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 C言語概要(1)
 ソフトウェア概要,データの型,フローチャート
ソフトウェアの種類,C言語の生い立ちが説明できる。計算機内部でのデータ表現方法が説明できる。フローチャートを作成できる。
2週 C言語概要(2)
 プログラムの実行方法
Windows上でC言語を使用してプログラムを作成し,実行することができる。プログラミングの作業やレポート提出に必要な作業方法が理解できる。
3週 コンピュータの入出力
 printf文とscanf文
データを入力し結果を表示する簡単なプログラム(四則演算程度)の作成ができる。
4週 制御構造Ⅰ(1)
 if文とif else文 その1
条件分岐を用いた条件分け処理を説明できる。
5週 制御構造Ⅰ(2)
 if文とif else文 その2
条件分岐を用いた条件分け処理のプログラムを作成できる。
6週 制御構造Ⅰ(3)
 繰り返し処理 その1
繰り返し処理(while文,for文)を説明できる。
7週 制御構造Ⅰ(4)
 繰り返し処理 その2
繰り返し処理(while文,for文)のプログラムを作成できる。
8週 前期中間試験 学んだ知識の確認ができる。
2ndQ
9週 制御構造Ⅰ(5)
 制御構造の組み合わせ
制御構造Ⅰで学習したif文,while文,for文等を組み合わせた様々な計算処理のプログラムを作成できる。
10週 配列(1)
 1次元配列
1次元配列の概要を説明できる。
1次元配列を用いたプログラムを作成できる。
11週 配列(2)
 1次元配列の応用
1次元配列を用いたデータの基礎的な統計処理プログラミングを作成できる。
12週 配列(3)
 2次元配列
2次元配列の概要を説明できる。
2次元配列を用いたプログラムを作成できる。
13週 配列(4)
 多次元配列,define文
多次元配列の概要を説明できる。
define文を用いた配列を定義できる。
14週 ポインタ(1)
 概要,ポインタと文字列
ポインタの概要を説明できる。
ポインタを用いた文字列処理のプログラムを作成できる。
15週 前期末試験 学んだ知識の確認ができる。
16週 答案返却および解説 学んだ知識の再確認および修正ができる。
後期
3rdQ
1週 ポインタ(2)
 ポインタのアドレス計算
ポインタによるメモリ上のアドレスを計算できる。
2週 ポインタ(3)
 ポイントと配列
ポインタを用いて配列を参照するプログラムを作成できる。
3週 関数(1)
 関数の定義方法
関数の定義方法を説明できる。
4週 関数(2)
 ローカル変数とグローバル変数
ローカル変数とグローバル変数を説明できる。
5週 関数(3)
 値による呼び出しと参照による呼び出し
値による呼び出しと参照による呼び出しによる関数を用いたプログラムを作成できる。
6週 関数(4)
 ポインタによる受け渡し
引数にポインタを用いたプログラムを作成できる。
7週 関数(5)
 配列による受け渡し
引数に配列を用いたプログラムを作成できる。
8週 後期中間試験 学んだ知識の確認ができる。
4thQ
9週 関数(6)
 プロトタイプ宣言
関数のプロタイプ宣言を用いたプログラムを作成できる。
10週 制御構造Ⅱ(1)
 break文,do while文,switch文
break文,do while文,switch文を用いたプログラムを作成できる。
11週 制御構造Ⅱ(2)
 continue文,無限ループ,強制終了,条件演算子
continue文,条件演算子を説明できる。
無限ループ,強制終了を用いたプログラムを作成できる。
12週 制御構造Ⅱ(3)
 前置演算と後置演算,キャストを用いた型変換,カンマ演算子,数値演算関数
前置演算と後置演算,カンマ演算子を説明できる。
数値演算関数,キャストを用いた型変換を用いたプログラムを作成できる。
13週 外部ファイルの入出力(1) 外部ファイルの入出力処理を説明できる。
14週 外部ファイルの入出力(2)
構造体
外部ファイルの入出力処理を用いたプログラムを作成できる。
構造体の概要を説明できる。
15週 学年末試験 学んだ知識の確認ができる。
16週 答案返却および解説 学んだ知識の再確認および修正ができる。

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。2前1
論理演算と進数変換の仕組みを用いて基本的な演算ができる。2前1
コンピュータのハードウェアに関する基礎的な知識を活用できる。2前1
数値計算の基礎が理解できる3前3
コンピュータにおける初歩的な演算の仕組みを理解できる。3前3
データの型とデータ構造が理解できる2前1,前10,前12,前13,前14,後2,後14
専門的能力分野別の専門工学情報系分野プログラミング変数とデータ型の概念を説明できる。3前1
代入や演算子の概念を理解し、式を記述できる。4前1,前3
制御構造の概念を理解し、条件分岐や反復処理を記述できる。4前4,前5,前6,前7,前9,後10,後11,後12
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。3後3,後4,後5,後6,後7,後9
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4前2,前3
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4前2,前3
主要な言語処理プロセッサの種類と特徴を説明できる。2前1
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。3前1,前2
プログラミング言語は計算モデルによって分類されることを説明できる。2前1
主要な計算モデルを説明できる。2前1
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。2前1,前2
ソフトウェアアルゴリズムの概念を説明できる。2前12,後7
与えられたアルゴリズムが問題を解決していく過程を説明できる。2前11,前12
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。2前11,前12
時間計算量や領域計算量などによってアルゴリズムを比較・評価できることを理解している。2前11,前12
整列、探索など、基本的なアルゴリズムについて説明できる。1前11,前12
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。2前10,前12,前13,前14
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。2前11
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。1後15
ソフトウェアを中心としたシステム開発のプロセスを説明できる。1前2
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。1後10,後11,後12
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。1後10,後11,後12
分野別の工学実験・実習能力情報系分野【実験・実習能力】情報系【実験・実習】与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。4前2,前3,前5,前7,前9,前10,前11,前12,前15,後2,後5,後6,後7,後9,後10,後11,後12,後14
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。4前2,前3,前5,前7,前9,前10,前11,前12,前15,後2,後5,後6,後7,後9,後10,後11,後12,後14
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。3前2,前3,前5,前7,前9,前10,前11,前12,前15,後2,後5,後6,後7,後9,後10,後11,後12

評価割合

試験発表課題態度ポートフォリオその他合計
総合評価割合90010000100
基礎的能力400500045
専門的能力500500055
分野横断的能力0000000