プログラミング基礎I

科目基礎情報

学校 熊本高等専門学校 開講年度 2017
授業科目 プログラミング基礎I
科目番号 0011 科目区分 一般 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 1
開設学科 共通教育科(八代) 対象学年 1
開設期 後期 週時間数 2
教科書/教材 Cの絵本 (株)アンク著 翔泳社
担当教員 村田 美友紀,米沢 徹也

到達目標

1. コンピュータ内での数値や文字の表現方法を説明でき,問題に適したデータ構造を設計できる.
2. Cプログラムの作成から実行までの処理ができる.
3. 変数と代入,標準入出力を用いたプログラムが作成できる.
4. 条件分岐を含むプログラムを作成でき,変数の動きをトレースできる.
5. 反復処理を含むプログラムを作成でき,変数の動きをトレースできる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
コンピュータ内での数値や文字の表現方法を説明でき,問題に適したデータ構造を設計できる.コンピュータ内での数値や文字の表現方法を説明でき,問題により適したデータ構造を設計できる.コンピュータ内での数値や文字の表現方法を説明でき,問題に適したデータ構造を設計できる.コンピュータ内での数値や文字の表現方法を説明できず,問題に適したデータ構造を設計できない.
Cプログラムの作成から実行までの処理ができる.Cプログラムの作成から実行までの処理ができ,その流れについて説明できる.Cプログラムの作成から実行までの処理ができる.Cプログラムの作成から実行までの処理ができない.もしくはその流れについて説明できない.
変数と代入,標準入出力を用いたプログラムが作成できる.すべての課題を提出し, 変数と代入,標準入出力を用いたプログラムが作成できる.すべての課題を提出し,変数と代入,標準入出力を用いたプログラムが作成できる.すべての課題を提出していない,もしくは変数と代入,標準入出力を用いたプログラムが作成できない.
条件分岐を含むプログラムを作成できる. すべての課題を提出し,条件分岐を含むプログラムを作成でき,変数の動きをトレースできる.また,問題に応じ適切な条件分岐構文を選択できる.すべての課題を提出し,条件分岐を含むプログラムを作成でき,変数の動きをトレースできる.すべての課題を提出していない,もしくは条件分岐を含むプログラムを作成でない,もしくは数の動きをトレースできない.
反復処理を含むプログラムを作成できる.すべての課題を提出し,反復処理を含むプログラムを作成でき,変数の動きをトレースできる.また,問題に応じ適切な反復処理構文を選択できる.すべての課題を提出し,反復処理を含むプログラムを作成でき,変数の動きをトレースできる.すべての課題を提出していない,もしくは反復処理を含むプログラムを作成でない,もしくは数の動きをトレースできない.

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

教育方法等

概要:
現代は計算機システムだけでなく家庭電気製品にいたるまでプログラムによって制御されており,将来技術者として活躍する高専生にとって,プログラムの基本的な知識の習得は必須である.本科目では,与えられた課題をコンピュータを使って解決するために必要な基礎知識の習得を目指す.プログラミング言語としては,もっとも広く利用されているC言語を用いる.
授業の進め方・方法:
教科書に従って授業を進めるが項目に応じて,別途資料を配布する.多くの演習問題を取り入れ,学習内容の修得を目指す.授業の内容で分からないところは質問するなど不十分なままにしない.サンプルプログラムをただ入力するだけでなく,なぜそうする?こうしたらどうなる?と考えながら演習に取り組むことが重要である.
注意点:
数学で公式だけ知っていても問題が解けないように,プログラムも構文を知っているだけでは,プログラムを作成することはできません.演習問題を含め多くのプログラムを作成することが目標達成につながります.プログラムが正しく動作しないときはバグ(誤り)を見つけ,修正する作業が必要ですが,この過程は皆さんの問題発見・解決能力を磨くことにつながると期待しています.
質問や相談は,直接,あるいはメールで随時受け付けます.また教員室前に所在を示し,在室時間等も掲示しておくので活用してください.

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 ガイダンス
プログラミングの作成から実行まで
・C言語プログラムの作成から実行までを操作できる.
・プログラムの実行における各装置の役割とデータの流れを説明できる.
2週 コンピュータ内部での整数,実数,文字,文字列の表現
定数と変数
・データの種類によるコンピュータ内部での表現方法の違いがあることを説明できる.
・格納するデータに適した変数が定義できる.
3週
printfの書式設定
演算子
コーディングスタイル
・代入演算子,演算子を使ったコードが書ける
・比較演算子,論理演算子を使って条件式が書ける
・適切なコーディングスタイルでプログラムが書ける
4週 フローチャート ・フローチャートが書ける
5週 標準入力 ・scanf, gets, getcharを使ったコードが書ける
6週 if文 ・if文を使った選択処理のコードが書ける
7週 if文の入れ子 ・if文の入れ子を使った選択処理のコードが書ける
8週 中間試験
4thQ
9週 中間試験の返却と解説
switch文
・switch文を使った分岐処理のコードが書ける
・if文との使い分けができる
10週 for文 ・for文を使った反復処理のコードが書ける
11週 2重ループ(反復処理) ・for文を使った2重ループのコードが書ける
12週 while文,do while文 ・while文,do while文を使った反復処理のコードが書ける
・for文,while文,do while文の違いを説明できる
13週 ループ(反復処理)の中断 ・break文,continue文を使ってループを制御するコードが書ける
14週 課題実習
・条件分岐や繰り返し処理のプログラムが書ける.
15週 [期末試験]
16週 期末試験の返却と解説

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー論理演算と進数変換の仕組みを用いて基本的な演算ができる。2
数値計算の基礎が理解できる1
コンピュータにおける初歩的な演算の仕組みを理解できる。1
データの型とデータ構造が理解できる1
専門的能力分野別の専門工学情報系分野プログラミング変数とデータ型の概念を説明できる。1
代入や演算子の概念を理解し、式を記述できる。1
制御構造の概念を理解し、条件分岐や反復処理を記述できる。1
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。1
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。1
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。1
ソフトウェアアルゴリズムの概念を説明できる。1
計算機工学整数・小数を2進数、10進数、16進数で表現できる。1
整数・小数をコンピュータのメモリ上でディジタル表現する方法を説明できる。1
基数が異なる数の間で相互に変換できる。1
基本的な論理演算を行うことができる。1

評価割合

試験課題合計
総合評価割合6040100
基礎的能力403070
専門的能力201030
分野横断的能力000