プログラミング演習

科目基礎情報

学校 鶴岡工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 プログラミング演習
科目番号 0084 科目区分 専門 / 必修
授業形態 演習 単位の種別と単位数 履修単位: 1
開設学科 創造工学科(情報コース) 対象学年 3
開設期 後期 週時間数 2
教科書/教材 高橋麻奈: やさしいC,SBクリエイティブ
担当教員 吉住 圭市

到達目標

変数とデータ型の概念を説明できる。代入や演算子の概念を理解し,式を記述できる。制御構造の概念を理解し,条件分岐や反復処理を記述できる。プロシージャ(関数)の概念を理解し,これらを含むプログラムを記述できる。与えられた簡単な問題に対して,それを解決するためのソースプログラムを記述し,実行することができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1制御構造の概念を理解し,条件分岐や反復処理を記述し,説明できる。制御構造の概念を理解し,条件分岐や反復処理を記述できる。制御構造の概念を理解し,条件分岐や反復処理を記述できない。
評価項目2プロシージャ(関数)の概念を理解し,これらを含むプログラムを記述し,説明できる。プロシージャ(関数)の概念を理解し,これらを含むプログラムを記述できる。プロシージャ(関数)の概念を理解し,これらを含むプログラムを記述できない。
評価項目3与えられた簡単な問題に対して,それを解決するためのソースプログラムを記述し,説明できる。与えられた簡単な問題に対して,それを解決するためのソースプログラムを記述できる。与えられた簡単な問題に対して,それを解決するためのソースプログラムを記述できない。

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

教育方法等

概要:
1年,2年で学習したC言語のプログラミング能力を高めることを目標とします。問題のトップダウン的解析や関数によるプログラムの機能分割に積極的に取り組むことにより,構造化プログラミングの方法を理解し,実践的なプログラミング能力を身につけます。
授業の進め方・方法:
前半は,教科書の練習問題を解くことで,C言語のプログラミングの基本を理解してください。後半は,簡単な問題に対して,それを解決するためのアルゴリズムを考え,プログラムを作成する演習を行います。
授業への取り組み30%,レポート70%で総合評価し,50点以上を合格とします。
注意点:
プログラムを完成させることが目的ではなく,プログラミングという作業に慣れることが重要です。構造化プログラミング,関数による機能分割にもチャレンジして欲しいと思います。人に聞いたり,ネットで調べたりすることは大切ですが,プログラムのコピーだけは絶対に行わないように注意してください。
【オフィスアワー】 授業日 16:00~17:00

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 ガイダンス
授業の進め方,プログラムの作成方法
授業の進め方を理解する。
プログラムの記述,コンパイル,実行の方法を理解する。
2週 C言語の基本
画面への出力
Cプログラムの基本構造を理解する。
画面への出力ができる。
3週 変数と代入,式の記述
キーボードからの入力
変数の概念を説明できる。
変数に代入できる。数式を記述できる。キーボードから変数に入力できる。
4週 制御構造
条件分岐
制御構造の概念を理解する。
条件分岐(if文,switch文)を記述できる。
5週 制御構造
反復処理
制御構造の概念を理解する。
反復処理(for文,while文,do文)を記述できる。前判定型,後判定型の構造を説明できる。
6週 配列
1次元配列,2次元配列
配列の概念を説明できる。
1次元配列,2次元配列を使った処理を記述できる。
7週 関数
引数,戻り値,関数の型
関数の概念,ライブラリの概念を説明できる。
関数を使ったプログラムを記述できる。
8週 関数
ユーザ定義関数
ユーザ定義関数を記述できる。
ユーザ定義関数を使うことができる。
4thQ
9週 変数とスコープ
ローカル変数,グローバル変数,static変数
スコープの仕組みを説明できる。
ローカル変数,グローバル変数,static変数を理解し,宣言できる。
10週 構造体
構造体の宣言,メンバ
構造体を説明できる。構造体を宣言できる。構造体メンバへのアクセスを記述できる。
11週 プログラムの鑑賞 他人の書いたプログラムの読解ができる。プログラムの動作を予想することができる。また,プログラムの良い点,悪い点を指摘することができる。
12週 練習問題
アルゴリズム作成
与えられた問題を理解し,その解法を考えて,アルゴリズムとして記述できる。
13週 練習問題
プログラミング
作成したアルゴリズムをC言語のプログラムとして記述できる。
14週 練習問題
実行とテスト
作成したプログラムをコンパイル,実行し,正しく動作するかテストすることがきる。
15週 練習問題の解説 自分の作成したプログラムとサンプルプログラムを比較し,その違いを理解できる。
16週  

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4
変数の概念を説明できる。4
データ型の概念を説明できる。4後2
制御構造の概念を理解し、条件分岐を記述できる。4
制御構造の概念を理解し、反復処理を記述できる。4
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4後2
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4
主要な言語処理プロセッサの種類と特徴を説明できる。4
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。4
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。3
ソフトウェアアルゴリズムの概念を説明できる。3
与えられたアルゴリズムが問題を解決していく過程を説明できる。3
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。3
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。3
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。3
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。3
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。3
その他の学習内容少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。4
少なくとも一つの具体的なオフィススイート等を使って、文書作成や図表作成ができ、報告書やプレゼンテーション資料を作成できる。4
少なくとも一つのメールツールとWebブラウザを使って、メールの送受信とWebブラウジングを行うことができる。4

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合00030070100
基礎的能力0001003040
専門的能力0001003040
分野横断的能力0001001020