プログラム演習Ⅱ

科目基礎情報

学校 沼津工業高等専門学校 開講年度 令和05年度 (2023年度)
授業科目 プログラム演習Ⅱ
科目番号 2023-070 科目区分 専門 / 選択
授業形態 授業 単位の種別と単位数 履修単位: 1
開設学科 機械工学科 対象学年 3
開設期 前期 週時間数 2
教科書/教材 ザ・C [第3版] -ANSI C準拠-,戸川隼人著,サイエンス社
担当教員 三谷 祐一朗

到達目標

グラフィックスを頻繁に利用することで,プログラミングに対する興味を持ち,簡単な文法を理解し,ある課題に対するアルゴリズムを構築,プログラミングできる事を目標とする.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
C言語の標準的文法を活用することができる.□C言語の標準的文法を活用し,プログラムを作ることができる.□C言語の標準的文法を活用し,プログラムを作ることができる.□C言語の標準的文法を活用し,プログラムを作ることができない.
与えられた課題に対するアルゴリズムを構築できる.□与えられた課題に対し,複数のアルゴリズムを構築できる.□与えられた課題に対し,アルゴリズムを構築できる.□与えられた課題に対し,アルゴリズムを構築できない.

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

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

教育方法等

概要:
プログラミングをすることの意味とその有用性を理解することおよび,基礎的な課題に対してアルゴリズムを作成しプログラミングできることを目指す.C言語を用い,単純な物理現象をシミュレーションすることや,簡単なゲームプログラミングを通じて,基本的な文法やグラフィック手法を学ぶ.
授業の進め方・方法:
説明は最小限にとどめ,学生が資料や教科書などを参考にプログラミングすることを促す.授業中に学習したことを復習するための課題を提出させ,プログラミングの能力向上を図る.
注意点:
評価については、評価割合に従って行います。

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

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

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 シラバス説明
Moodleの内容紹介
仮想OS構築の推奨
教科書の確認と注意
授業の進め方
C言語によるプログラミング4-「ボール投げ」のシミュレーション
プログラム演習Ⅰの復習(printf,scanf,int,for)
授業の到達目標を説明できる.
ボール投射の,シミュレーションの方法を説明できる.
2週 環境構築
プログラム演習Ⅰの復習(if,while,関数)
レポート提出方法
C言語によるプログラミング4-「ボール投げ」のシミュレーション 概要
実数型変数のキーボードからの値の入力方法
等加速度直線運動,自由落下,鉛直投射,水平投射および射方投射の計算を応用し,運動の第一法則の応用として,等加速度運動であるボール投射の,シミュレーションプログラムを作成できる.
3週 レポート提出方法(コピー,プリントアウト)
C言語によるプログラミング4-「ボール投げ」のシミュレーション 説明
レポートNo.13のヒント(実数型変数のキーボードからの値の入力方法)
レポートNo.13, 14
実数型変数を用いた標準入出力のためのプログラムを作ることができる.
4週 C言語によるプログラミング5-データファイルの取り扱い(概要)
宣言子FILEの使い方・注意
書き込み用ファイルの開き方,書き込み方・注意
ファイルの閉じ方
読み込み用ファイルの開き方,読み込み方・注意
レポート17~20の実行例
グラフィック色の変え方
データファイルの読み込み・書き込みのためのプログラムを作成できる.
5週 レポートNo.14のヒント(ボール投射における頂点に到達した時のみの一時停止方法) プログラムのアルゴリズムを構築することができる.
6週 前半の総復習 プログラムを実行するための手順を理解し,定数・変数,算術演算・比較演算,入出力,繰り返しや条件分岐など,C言語の基礎的な文法を用いたプログラミングができる.
7週 前半の総復習 標準入出力,繰り返し処理,条件分岐,ファイル操作を用いた,アルゴリズムを意識したプログラムを作成できる.
8週 前期中間試験
両端単純支持梁の自由振動のシミュレーション(紹介)
筆記試験結果より,C言語に関する基礎的な文法の活用能力を向上させる事ができる.
2ndQ
9週 前期中間試験の解答・解説
C言語によるプログラミング6-配列の使い方(概要)
配列の宣言方法
配列の使い方と注意
配列を用いたプログラムを作ることができる.
10週 C言語によるプログラミング7-ポインタ(意義)
変数のアドレス
配列の先頭アドレスとキーボードからの入力方法
配列の数値の表示
ポインタ変数と使い方
ポインタを用いたプログラムを作ることができる.
11週 配列のアドレス(復習)
レポートNo.23のヒント
アドレスの概念を用いたプログラムを作ることができる.
12週 C言語によるプログラミング8-文字列記憶力ゲームの説明
文字列変数の宣言,読込み・画面表示方法(%sの使い方)
\rの意味
読込用データファイルが存在しないときの処理方法
レポートNo.27の紹介
シフト演算子,ビット演算しを理解し,プログラムを作ることができる.
13週 ビット演算子 "&" の意味
シフト演算子 ">>","<<" の意味
C言語による,簡単な記憶力ゲームを作ることができる.
14週 C言語によるプログラミング9-演算子,switch,シフト演算子 ">>",ビット演算子 "&" の解説(復習)
過去問の解答・解説
演算子の種類と優先順位を理解し,配列,ポインタ,文字列,論理演算,進数変換を用いたプログラムを作成できる.
15週 前期末試験の解答・解説
授業の感想・希望に対するコメント
今まで学習してきたことを活用し,課題を解決するプログラムを作成できる.
16週

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力自然科学物理力学等加速度直線運動の公式を用いて、物体の座標、時間、速度に関する計算ができる。3前2,前3,前5,前6,前7,前15
自由落下、及び鉛直投射した物体の座標、速度、時間に関する計算ができる。3前1,前2,前3,前5,前6,前7,前15
水平投射、及び斜方投射した物体の座標、速度、時間に関する計算ができる。3前1,前2,前3,前5,前6,前7,前15
工学基礎情報リテラシー情報リテラシー論理演算と進数変換の仕組みを用いて基本的な演算ができる。2前12,前13,前15
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。3前1,前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。3前1,前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。3前1,前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
専門的能力分野別の専門工学機械系分野力学速度の意味を理解し、等速直線運動における時間と変位の関係を説明できる。4前2,前3,前5,前6,前7,前15
加速度の意味を理解し、等加速度運動における時間と速度・変位の関係を説明できる。4前2,前3,前5,前6,前7,前15
運動の第一法則(慣性の法則)を説明できる。4前2,前3,前5,前6,前7,前15
情報処理プログラムを実行するための手順を理解し、操作できる。4前1,前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
定数と変数を説明できる。4前1,前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
整数型、実数型、文字型などのデータ型を説明できる。3前1,前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
演算子の種類と優先順位を理解し、適用できる。3前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
算術演算および比較演算のプログラムを作成できる。4前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
データを入力し、結果を出力するプログラムを作成できる。4前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
条件判断プログラムを作成できる。4前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
繰り返し処理プログラムを作成できる。4前2,前3,前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15
一次元配列を使ったプログラムを作成できる。4前5,前9,前10,前11,前12,前13,前14,前15

評価割合

前期中間試験前期末試験レポート態度合計
総合評価割合30303010100
評価割合30303010100