情報処理

科目基礎情報

学校 旭川工業高等専門学校 開講年度 令和06年度 (2024年度)
授業科目 情報処理
科目番号 082 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 2
開設学科 システム制御情報工学科(2021年度以降入学者) 対象学年 1
開設期 通年 週時間数 2
教科書/教材 基礎C言語プログラミング(著者 河野英昭・横尾徳保・重松保弘,共立出版),各種プリント(K-SEC教材を含む),eラーニング・コンテンツ
担当教員 森川 一

到達目標

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

ルーブリック

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

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

  システム制御情報工学科の教育目標② 説明 閉じる
本科の教育目標① 説明 閉じる

教育方法等

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

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
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週 制御構造Ⅰ(5)
 制御構造の組み合わせ その1
制御構造Ⅰで学習したif文,while文,for文等を組み合わせた様々な計算処理のプログラムを作成できる。
次週,中間試験を実施する。
8週 中間試験 これまでの学習内容の理解度を試験により確認する(試験時間90分)。
2ndQ
9週 試験答案の確認・正答解説
制御構造Ⅰ(6)
 制御構造の組み合わせ その2
試験結果から自らの理解状況を把握して,今後の学習に反映できる。
制御構造Ⅰで学習したif文,while文,for文等を組み合わせた様々な計算処理のプログラムを作成できる。
10週 配列(1)
 1次元配列
 1次元配列の応用
1次元配列の概要を説明できる。
1次元配列を用いたプログラムを作成できる。
1次元配列を用いたデータの基礎的な統計処理プログラミングを作成できる。
11週 配列(2)
 2次元配列
2次元配列の概要を説明できる。
2次元配列を用いたプログラムを作成できる。
12週 配列(3)
 多次元配列,define文
多次元配列の概要を説明できる。
define文を用いた配列を定義できる。
13週 ポインタ(1)
 概要,ポインタと文字列 その1
ポインタの概要を説明できる。
ポインタを用いた文字列処理のプログラムを作成できる。
14週 ポインタ(2)
 概要,ポインタと文字列 その2
ポインタの概要を説明できる。
ポインタを用いた文字列処理のプログラムを作成できる。
15週 ポインタ(3)
 ポインタのアドレス計算
ポインタによるメモリ上のアドレスを計算できる。
16週 期末試験 これまでの学習内容の理解度を試験により確認する(試験時間90分)。
後期
3rdQ
1週 ポインタ(4)
 ポイントと配列
ポインタを用いて配列を参照するプログラムを作成できる。
2週 関数(1)
 関数の定義方法
関数の定義方法を説明できる。
3週 関数(2)
 ローカル変数とグローバル変数
ローカル変数とグローバル変数を説明できる。
4週 関数(3)
 値による呼び出しと参照による呼び出し
値による呼び出しと参照による呼び出しによる関数を用いたプログラムを作成できる。
5週 関数(4)
 ポインタによる受け渡し
 配列による受け渡し
引数にポインタを用いたプログラムを作成できる。
引数に配列を用いたプログラムを作成できる。
6週 制御構造等
 break, do-while, switch, continue, 無限ループ, exit
制御構造を活用したプログラムを作成できる。
7週 各種演算子等
 条件演算子,カンマ演算子,数値演算関数,キャスト,前後置演算
条件演算子,カンマ演算子,数値演算関数,キャスト,前後置演算等を用いたプログラムを作成できる。
次週,中間試験を実施する。
8週 中間試験 これまでの学習内容の理解度を試験により確認する(試験時間90分)。
4thQ
9週 試験答案の確認・正答解説
外部ファイルの入出力(1)
試験結果から自らの理解状況を把握して,今後の学習に反映できる。
外部ファイルの入出力処理を説明できる。
外部ファイルの入出力処理を用いたプログラムを作成できる。
10週 外部ファイルの入出力(2) 外部ファイルの入出力処理を説明できる。
外部ファイルの入出力処理を用いたプログラムを作成できる。
11週 ネットワーク技術(1)
 サーバ,ネットワーク技術 その1
サーバの種類について説明,サーバの構築方法を説明できる。
ネットワークの構成要素,ネットワークを構成する技術(ルーティング技術)について説明できる。
12週 ネットワーク技術(2)
 ネットワーク技術 その2,通信の仕組み
サイバーセキュリティ基礎【K-SEC】
AI.データサイエンス基礎【K-SEC】
ネットワークを構成する技術(フィルタリング技術)について説明できる。
構造体の基本的な要素を説明できる。
有線と無線通信の仕組みと規格について説明できる。
サイバーセキュリティの基本について説明できる。
AI.データサイエンスの基本について説明できる。
13週 構造体 構造体を活用したプログラムを作成できる。
14週 共用体
配列の入れ替え
共用体を活用したプログラムを作成できる。
配列の入れ替えプログラムを作成できる。
15週 アルゴリズム
 ソートアルゴリズム
アルゴリズムについて説明できる。
ソートアルゴリズムの種類を列挙できる。
代表的なソートアルゴリズムの考え方を説明できる。
16週 学年末試験 これまでの学習内容の理解度を試験により確認する(試験時間90分)。

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー代表的な情報システムとその利用形態について説明できる。2前1,後11
コンピュータの構成とオペレーティングシステム(OS)の役割を理解し、基本的な取扱いができる。2前1,後11
アナログ情報とデジタル情報の違いと、コンピュータ内におけるデータ(数値、文字等)の表現方法について説明できる。3前1
情報を適切に収集・取得できる。2前1,後11
基礎的なプログラムを作成できる。3前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後9,後10,後13,後14,後15
計算機を用いて数学的な処理を行うことができる。3前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後9,後10
基礎的なアルゴリズムについて理解し、任意のプログラミング言語を用いて記述できる。3後14,後15
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。3後14,後15
情報通信ネットワークの仕組みや構成及び構成要素、プロトコルの役割や技術についての知識を持ち、社会における情報通信ネットワークの役割を説明できる。2後11,後12
情報セキュリティの必要性を理解し、対策について説明できる。2後11,後12
データサイエンス・AI技術の概要を説明できる。2後12
データサイエンス・AI技術が社会や日常生活における課題解決の有用なツールであり、様々な専門領域の知見と組み合わせることによって価値を創造するものであることを、活用事例をもとに説明できる。2後12
データサイエンス・AI技術を利活用する際に求められるモラルや倫理について理解し、データを守るために必要な事項を説明できる。 2後12
自らの専門分野において、データサイエンス・AI技術と社会や日常生活との関わり、活用方法について説明できる。 1後12
専門的能力分野別の専門工学情報系分野プログラミングプログラミングの基本的な構造を理解し、プログラムを記述できる。3前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後9,後10,後13,後14,後15
サブルーチンの概念を理解し、これらを含むプログラムを記述できる。3前10,後2,後3,後4,後15
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。3前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後9,後10,後13,後14,後15
与えられたソースプログラムを解析し、プログラムの動作を予測できる。3前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後9,後10,後13,後14,後15
ソフトウェア生成に必要なツールを使い、ソースプログラムを実行できる。3前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後9,後10,後13,後14,後15

評価割合

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