プログラミング演習Ⅰ

科目基礎情報

学校 沼津工業高等専門学校 開講年度 令和04年度 (2022年度)
授業科目 プログラミング演習Ⅰ
科目番号 2022-520 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 制御情報工学科 対象学年 2
開設期 前期 週時間数 4
教科書/教材 検討中
担当教員 宮下 真信

到達目標

1.コンピュータの基本的な操作や情報倫理を理解し、オペレーティングシステムの基本的なコマンド・ファイル操作ができる。
2.与えられた問題を分析して流れ図(フローチャート)を記述し、動作手順に沿ってC言語でコーディング・コンパイルすることができる。
3.段階的に行う演習に対して、適切に学修内容を報告(レポート)できる。
4.独自の問題を設定し、設計/実装した結果についてプレゼンテーションができる(学習・教育目標に対応)。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1:コンピュータの基本的な操作ができる□Linuxの基本的な操作方法に習熟し、ディレクトリの作成・移動、ファイルの作成・消去をスムーズに行うことができる□Linuxの基本的な操作方法を理解し、教科書などの資料を参照しながらディレクトリの作成・移動、ファイルの作成・消去ができる□ディレクトリ構造やファイル管理に関する概念を理解しておらず、CUIによるコンピュータの操作ができない
評価項目2:与えられた問題の分析ならびに設計と実装ができる□与えられた問題について、フーチャートを作成し、設計/実装ができる。□与えられた問題について、文献を参考すれば、フローチャートを作成し、設計/実装ができる。□与えられた問題について、フーチャートを作成し、設計/実装ができない。
評価項目3:演習問題に対して、適切に学修内容を報告(レポート)できる□独自の調査や詳細な考察により、授業や指導書の内容を超えた報告書をまとめ、期限内に提出することができる□指導書と講義内容をもとに、演習内容を報告書としてまとめ、期限内に提出することができる□演習内容を報告書としてまとめて期限内に提出することができない
評価項目4:独自の問題を設定し、プレゼンテーションができる(学習・教育目標に対応)□独自のアプリケーションを創作して他者へ紹介するとともに、独自の工夫点や新規的な点についてもプレゼンテーションして情報共有ができる□独自のアプリケーションを創作し、他者にデモンストレーションできる□プログラミングに関する技量が不十分で、独自のアプリケーションを作成することができない

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

【本校学習・教育目標(本科のみ)】 3 説明 閉じる

教育方法等

概要:
情報処理機器や機械などの制御において、コンピュータシステムのプログラミングは必要不可欠です。本演習では、コンピュータの基本的操作、オペレーティングシステムの基礎、エディタソフトの使い方、C言語によるプログラミングの基礎について学習します。
また、技術文書の書き方について課題レポートを通して学びます。
授業の進め方・方法:
本演習は以下の流れで行う。
1.プログラムを構築するためのアルゴリズムを作成方法の講義(プログラム設計方法)
2.アルゴリズムに沿ったC言語の記述方法を講義(実装方法)
3.例題を解決するためのフローチャート、変数の設計(プログラム設計の実践)
4.C言語によるコーディング(プログラム実装の実践)
5.例題を用いた演習(実証方法の実践)
6.レポート作成と提出(演習結果報告作成の実践)
注意点:

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

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

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス
文字の出力
Linux OSの基本コマンドが使える。
デレクトリの基本構造を理解し、プログラムやデータの管理ができる。
エディタ(emacs)でプログラムを作成できる。
レポートの作成の仕方を理解する。


2週 整数値の入出力と四則演算 整数型、int型の変数を宣言して使用することができる。
定数や変数を使用して式を記述,演算できる。
3週 実数値の入出力と演算 実数型、float型の変数を宣言して使用することができる。
演算の優先順位を理解して演算子を適切に使用できる。
4週 文字列の入出力 文字列型、char型の宣言ができる。
文字型の入出力ができる。
5週 条件分岐命令 if-else文を用いた条件判断の記述ができる
比較による条件式の記述ができる
6週 繰り返し命令 for文を用いて繰り返し処理ができる
7週 繰り返し命令と条件分岐 繰り返し文の中で、条件分岐でループから抜ける処理ができる。
8週 配列操作1 メモリ上で、連続した領域をとる1次元配列が理解できる。
2ndQ
9週 配列操作2 2次元以上の配列操作ができる。
10週 ポインタ変数と配列 ポインタ型の宣言ができる。
ポインタとメモリとの関係を理解できる。
実数型のメモリ内での表現を出力できる。
1次元、2次元配列のメモリ内での表現を理解できる。
11週 ファイルの入出力1 計算した結果をファイル出力し、グラフを表示することができる。
12週 ファイルの入出力2 ファイルを入力して、データ処理ができる。
13週 関数・手続き文1 繰り返して使用されるプログラムについて関数を使って表現できる。
14週 関数・手続き文2 値を返す場合、返さない場合の関数・手続き文を理解している。
15週 総合演習:課題発表 独自のプログラムの作成について、グループで議論しながら設計・実装、実行、デバッグができる。
16週

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎工学実験技術(各種測定方法、データ処理、考察方法)工学実験技術(各種測定方法、データ処理、考察方法)実験ノートや実験レポートの記載方法に沿ってレポート作成を実践できる。3前1
実験の考察などに必要な文献、参考資料などを収集できる。3前1
レポートを期限内に提出できるように計画を立て、それを実践できる。3前1
情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。3前1
論理演算と進数変換の仕組みを用いて基本的な演算ができる。3前2
コンピュータのハードウェアに関する基礎的な知識を活用できる。3前11
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。3前7
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。3前8
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。3前14
専門的能力分野別の専門工学機械系分野情報処理プログラムを実行するための手順を理解し、操作できる。3前1
定数と変数を説明できる。3前2
整数型、実数型、文字型などのデータ型を説明できる。3前4
演算子の種類と優先順位を理解し、適用できる。3前4
算術演算および比較演算のプログラムを作成できる。3前5
データを入力し、結果を出力するプログラムを作成できる。3前3
条件判断プログラムを作成できる。3前5
繰り返し処理プログラムを作成できる。3前6
一次元配列を使ったプログラムを作成できる。3前9
情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。3前2
データ型の概念を説明できる。3前4
制御構造の概念を理解し、条件分岐を記述できる。3前5
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。3前8
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。3前1
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。3前13
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。3前15
ソフトウェア与えられたアルゴリズムが問題を解決していく過程を説明できる。4前7
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。4前13
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。3前12
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。3前10
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。3前10
情報数学・情報理論コンピュータ上での数値の表現方法が誤差に関係することを説明できる。3前4
コンピュータ上で数値計算を行う際に発生する誤差の影響を説明できる。3前4
その他の学習内容少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。4前8
少なくとも一つの具体的なオフィススイート等を使って、文書作成や図表作成ができ、報告書やプレゼンテーション資料を作成できる。4前15
分野別の工学実験・実習能力機械系分野【実験・実習能力】機械系【実験実習】レポートの作成の仕方を理解し、実践できる。3前1
情報系分野【実験・実習能力】情報系【実験・実習】与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。3前8
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。3前8
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。3前13
フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。3前1
問題を解決するために、与えられたアルゴリズムを用いてソースプログラムを記述し、得られた実行結果を確認できる。3前14
標準的な開発ツールを用いてプログラミングするための開発環境構築ができる。3前8
要求仕様にあったソフトウェア(アプリケーション)を構築するために必要なツールや開発環境を構築することができる。3前13
要求仕様に従って標準的な手法によりプログラムを設計し、適切な実行結果を得ることができる。3前14
分野横断的能力汎用的技能汎用的技能汎用的技能目的や対象者に応じて適切なツールや手法を用いて正しく情報発信(プレゼンテーション)できる。2前15
態度・志向性(人間力)態度・志向性態度・志向性周囲の状況と自身の立場に照らし、必要な行動をとることができる。2前14
自らの考えで責任を持ってものごとに取り組むことができる。2前14
目標の実現に向けて計画ができる。2前14
目標の実現に向けて自らを律して行動できる。2前14
日常の生活における時間管理、健康管理、金銭管理などができる。3前1
法令やルールを遵守した行動をとれる。3前1
他者のおかれている状況に配慮した行動がとれる。3前14

評価割合

試験発表相互評価態度ポートフォリオレポート合計
総合評価割合00000100100
基礎的能力0000000
専門的能力00000100100
分野横断的能力0000000