プログラミング基礎

科目基礎情報

学校 高知工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 プログラミング基礎
科目番号 B2017 科目区分 専門 / 必修
授業形態 演習 単位の種別と単位数 履修単位: 2
開設学科 SD 基礎教育・一般科目 対象学年 2
開設期 通年 週時間数 2
教科書/教材 明快入門C
担当教員 西内 悠祐,岩崎 洋平,浦山 康洋,立川 崇之

到達目標

1.C言語のプログラムを理解し,プログラムがどのように動作するのか説明できる。
2.基本的なアルゴリズムとデータ構造を理解する。
3.論理的な思考ができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1問題を解決するための手順やフローチャートからC言語のプログラムを作成できる。C言語のプログラムを理解し,プログラムがどのように動作するのか説明できる。C言語のプログラムを理解できず,プログラムがどのように動作するのか説明できない。
評価項目2基本的なアルゴリズムとデータ構造について理解し、C言語のプログラムを作成できる。基本的なアルゴリズムとデータ構造について説明できる。基本的なアルゴリズムとデータ構造について説明できない。
評価項目3問題を解決するための手順をフローチャートで記述できる。記述されたフローチャートを理解し,フローチャートの動作を説明できる。記述されたフローチャートを理解できず,フローチャートの動作を説明できない。

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

教育方法等

概要:
基本的なC言語プログラミングに関する演習を通じて,論理的な思考力を修得し,コンピュータ上でプログラムの開発・実行・動作確認が行えるようになることを目指す。これにより,基本的な問題解決能力の向上も目指す。各コースに分かれる前の基礎教育であるので,特定のコースに特化した内容は扱わず,標準的,基本的な内容について体験的に学ぶ。ひとつの課題に対して,2~3週間の演習時間を設けるので,自分自身で考え,問題点を見つけ,解決することを心がけてほしい。
授業の進め方・方法:
まず,演習の内容について,スライドなどを用いて説明する。学生はノートを取り,わからないことがあれば,時間中に質問する。その後,コンピュータを使って演習(プログラム開発)に取り組む。演習中は教員が支援し、動作確認を行うことで終了する。定期試験も実施する。
注意点:
初めから,すべてのことを教えてもらうつもりでは,問題を解決する能力の向上は望めない。他の学生と相談することは構わないが,各自が主体的に取り組むことが必要である。
試験の成績70 %,平素の学習状況等(課題・小テスト・レポートなど)30 %の割合で総合的に評価する。
評価は前期および後期の各期間の評価の平均とする。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス・開発環境の説明 授業の進め方,評価法などについて理解する。エディタの基本操作,フォルダの作成と移動について理解する。
2週 コンパイルとリンク
データ型と四則演算
ソースファイル,機械語ファイル,実行可能ファイルの関係を理解し,実行可能ファイルを生成できる。
データ型と四則演算について理解し、プログラムを作成できる。
3週 変数の宣言と代入 変数について理解し、プログラムを作成できる。
4週 標準入力 標準入出力について理解し、scanfを使用したプログラムを作成できる。
5週 条件分岐-if-(1) if構文と論理演算子について理解し、プログラムを作成できる。
6週 条件分岐-if-(2) if構文のネスト構造について理解し、プログラムを作成できる。
7週 条件分岐-if-(3) 複雑な条件分岐をif構文を用いて記述することができる。
8週 条件分岐-switch-(1) switch構文について理解し、プログラムを作成できる。
2ndQ
9週 条件分岐-switch-(2) 複雑な条件分岐をswitch構文を用いて記述することができる。
10週 反復処理-for-(1) for構文について理解し、プログラムを作成できる。
11週 反復処理-for-(2) for構文のネスト構造について理解し、プログラムを作成できる。
12週 反復処理-while-(1) wnile構文について理解し、プログラムを作成できる。
13週 反復処理-while-(2) do wnile構文について理解し、プログラムを作成できる。
14週 条件分岐と反復処理の組み合わせ(1) 条件分岐と反復処理を組み合わせたプログラムを作成できる。
15週 条件分岐と反復処理の組み合わせ(2) 条件分岐と反復処理を組み合わせたプログラムを作成できる。
16週
後期
3rdQ
1週 配列(1) 配列を理解し、プログラムを作成できる。
2週 配列(2) 2次元配列を理解し、プログラムを作成できる。
3週 文字列 配列による文字列操作プログラムを作成できる。
4週 関数(1) 関数を理解し、作成することができる。
5週 関数(2) 関数を用いたプログラムを作成することができる。
6週 標準関数(1) 標準ライブラリのインクルードについて理解し、標準関数を利用したプログラムを作成できる。
7週 標準関数(2) 標準関数を利用したプログラムを作成できる。
8週 ファイル入出力(1) ファイル処理の概要を理解し,シーケンシャルファイルにデータを書き出すプログラムを作成できる。
4thQ
9週 ファイル入出力(2) シーケンシャルファイルからデータを読み込むプログラムを作成できる。
10週 アルゴリズムとフローチャート(1) フローチャートを読み、アルゴリズムを理解できる。
11週 アルゴリズムとフローチャート(2) バブルソートについて理解し、プログラムを作成できる。
12週 アルゴリズムとフローチャート(3) 2分探索について理解し、プログラムを作成できる。
13週 総合演習(1) プログラミング基礎で学習した内容を基に、総合的なプログラムを作成できる。
14週 総合演習(2) プログラミング基礎で学習した内容を基に、総合的なプログラムを作成できる。
15週 総合演習(3) プログラミング基礎で学習した内容を基に、総合的なプログラムを作成できる。
16週

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。3
論理演算と進数変換の仕組みを用いて基本的な演算ができる。3

評価割合

試験課題合計
総合評価割合7030100
基礎的能力401050
専門的能力302050
分野横断的能力000