プログラミング基礎

科目基礎情報

学校 大島商船高等専門学校 開講年度 令和05年度 (2023年度)
授業科目 プログラミング基礎
科目番号 0029 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 電子機械工学科 対象学年 2
開設期 通年 週時間数 2
教科書/教材 結城 浩、「C言語プログラミングレッスン」(ソフトバンク) / 自作資料
担当教員 小林 心

到達目標

(1)PCを用いてプログラムを作成、デバッグを行い動作を確認できる。
(2)数値を入力して、計算を行い、結果を表示するプログラムを作成できる。
(3)条件分岐とフローチャートの関係を理解してプログラムを作成できる。
(4)繰り返し文の動作をを理解してプログラムを作成できる。
(5)変数、配列のアドレスとポインタ変数の関係を理解してプログラムを作成できる。
(6)関数間のデータの受け渡し方法を理解してプログラムを作成できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1プログラムを作成して、デバッグを行い、完成することができる。プログラムを記述できるが、デバッグができない。プログラムを記述できない。
評価項目2数値を入力して計算を行い結果を表示するプログラムの作成の際、整数演算、実数演算の使い分けができる。数値入力、結果表示のプログラムを作成できるが、整数型変数と実数型変数の使い分けができない。数値入力、結果表示のプログラムを作成できない。
評価項目3条件分岐とフローチャートの関係を理解してプログラムを作成できる。条件分岐のプログラムを作成できる。条件分岐のプログラムを作成できない。
評価項目4繰り返し文を用いて、条件分岐と組み合わせたプログラムを作成できる。繰り返しのプログラムを作成できる。繰り返しのプログラムを作成できない。
評価項目5変数、配列のアドレスとポインタ変数の関係を理解してプログラムを作成できる。ポインタ変数を使ったプログラムの作成ができる。ポインタ変数を使ったプログラムの作成ができない。
評価項目6関数間のデータの受け渡し方法を理解してプログラムを作成できる。関数を用いたプログラムを作成できる。関数を用いたプログラムを作成できない。

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

本校 (1)-a 説明 閉じる
電子機械 (3)-b 説明 閉じる

教育方法等

概要:
コンピューターのプログラミングの基礎についてC言語を用いて学習します。
授業の進め方・方法:
毎回、情報教育センターのパソコンを用いてプログラミングの課題に取り組み、情報教育システムで提出する。
注意点:
教室での授業内容はノートを取ること。配布されるプリントは整理して無くさないように自己管理すること。
前期、後期の中間試験と期末試験を実施する。試験の得点と、平常の課題への取り組み方を評価して成績を決める。

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

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

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 プログラム作成(1)概要 開発環境の基礎を理解して、PCを用いてソースファイルを作成できる。
2週 プログラム作成(2)コンパイラ プログラミングの手順を理解して、コンパイル、プログラム実行、情報教育システムによる提出ができる。
3週 メイン関数の構成と文字列の表示 メイン関数の構成とprintf関数の文法を理解できる。
コンパイラのエラーメッセージを解読してデバッグを行いプログラムを完成させる事ができる。
4週 整数の四則計算 整数の四則演算を実行して結果を出力するプログラムを作成できる。
5週 整数型変数 int型変数を用いて、整数の四則演算の結果を記憶、出力するプログラムを作成できる。
6週 実数の四則演算と実数型変数 実数同士、実数と整数の四則演算を実行して結果を出力するプログラムを作成できる。
double型変数を用いて、実数の計算結果を記憶、出力するプログラムを作成できる。
7週 文字列の入出力 char型変数を用いて文字・文字列を記憶するプログラムを作成できる。
コマンドラインから文字列を入力して、結果を表示するプログラムを作成できる。
8週 整数と実数の入出力 コマンドラインから整数・実数値を入力して、結果を表示するプログラムを作成できる。
2ndQ
9週 前期中間試験
10週 条件分岐(1) if-else文を用いて条件分岐をするプログラムの作成方法を理解できるできる。
if-else if-else文を理解して、複数の選択肢を持つ条件分岐を用いたプログラムを作成できる。
11週 条件分岐(2) if-else文の入れ子や論理演算による複雑な条件分岐を用いたプログラムを作成できる。
12週 フローチャート フローチャートの書式を理解し、条件分岐を含むフローチャートを作成できる。
フローチャートを読み、対応したプログラムを作成できる。
13週 くり返し文(1) for文による繰り返しのプログラムを作成できる。
14週 くり返し文(2) 2重ループにおけるfor文の働きを理解し、2重ループを用いたプログラムを作成できる。
15週 応用問題演習 くり返し文と条件分岐を組み合わせたプログラムを作成できる。
16週 前期期末試験
後期
3rdQ
1週 プログラミング的思考 課題をプログラミングで解くために必要なプログラミング的思考を理解し、課題をプログラムで記述可能な内容に分割できる。
2週 くり返し文(3) while文とfor文の相違点を理解して、for文のプログラムをwhile文で書き換えることができる。
do-while文によるプログラムを作成できる。
3週 条件分岐(4) 最大値を求めるプログラムを、条件分岐による方法と、最大値の変数を用いる方法で作成して、両者のメリット、デメリットを理解できる。
4週 条件分岐(5) switch-case文とif-else if-else文との関係を理解して、switch-case文によるプログラムを作成できる。
5週 関数(1) 関数の構成を理解して、引数と戻り値を持つユーザー関数を作成できる。
6週 関数(2) 関数の構成を理解して、引数を持たないユーザ関数、戻り値を持たないユーザー関数を作成できる。
プログラムを複数の関数に分割できる。
7週 標準ライブラリ 標準ライブラリの意味と使い方を理解する。
数学関数ライブラリーを用いた計算プログラムを作成できる。
8週 後期中間試験
4thQ
9週 ファイル操作 ファイルを用いた入出力を行うプログラムを作成できる。
10週 アドレスとポインタ変数 変数とメモリ、アドレスの関係を理解して、ポインタ変数を用いたプログラムを作成できる。
ポインタ変数による変数のアドレス表示および操作のプログラムを作成できる。
11週 配列 変数の配列を理解して、繰り返し文と組み合わせたプログラムを作成できる。
12週 配列とポインタ変数 配列とポインタ変数の関係を理解し、配列とポインタ変数を組み合わせたプログラムを作成できる。
ポインタと整数、ポインタ同士の演算を理解する。
13週 関数と変数のアドレス渡し 関数における変数のアドレス渡しにより、複数の演算結果を返す関数を作成できる。
14週 関数と配列・ポインタの練習問題演習 関数を用いた練習問題を解くプログラムを作成できる。
配列・ポインタを用いた練習問題を解くプログラムを作成できる。
15週 応用問題演習 これまでの内容を復習し、複雑な課題のプログラムを作成できる。
構造体や文字列などの、組み込みシステムのプログラミングに必要な仕組みを理解する。
16週 学年末試験

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。3後1,後3,後4,後12,後13
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。3前12,前15,後1,後13
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。3後3,後13,後14,後15
専門的能力分野別の専門工学機械系分野情報処理プログラムを実行するための手順を理解し、操作できる。3前1,前2,前3
定数と変数を説明できる。3前5,前8,後10
整数型、実数型、文字型などのデータ型を説明できる。3前5,前6,前7,後10
演算子の種類と優先順位を理解し、適用できる。3前4,後12
算術演算および比較演算のプログラムを作成できる。3前4,前6,前10,前11
データを入力し、結果を出力するプログラムを作成できる。3前7,前8,後9
条件判断プログラムを作成できる。3前10,前11,前12,前15,後3,後4
繰り返し処理プログラムを作成できる。3前13,前14,前15,後2
一次元配列を使ったプログラムを作成できる。3前14,後2,後11,後12

評価割合

試験演習・課題等合計
総合評価割合7030100
基礎的能力000
専門的能力7030100
分野横断的能力000