シラバス情報

授業科目名
応用プログラミング演習
(英語名)
Applied Programming Exercise
科目区分
専門教育科目
対象学生
工学部
学年
2年
ナンバリングコード
HETBK2MCA5
単位数
2.00単位
ナンバリングコードは授業科目を管理する部局、学科、教養専門の別を表します。詳細は右上の?から別途マニュアルをダウンロードしてご確認ください。
授業の形態
実習 (Practical Training)
開講時期
2026年度後期
(Fall semester)
担当教員
小橋 昌司、山添 大丈、和田 孝之
所属
工学研究科
授業での使用言語
日本語
関連するSDGs目標
目標4/目標9
オフィスアワー・場所

担当教員への質問や相談は、UNIPAのQ&A機能を通じて事前に予約することを原則とします。

対面での対応は、木曜日12:10〜13:00に6号館6313室で行います。

状況に応じて、オンライン会議形式で対応する場合があります。

連絡先

連絡事項がある場合は、UNIPAのQ&A機能を利用し、担当教員まで連絡してください。


対応するディプロマ・ポリシー(DP)・教職課程の学修目標
二重丸は最も関連するDP番号を、丸は関連するDPを示します。
学部DP
3◎/4〇/5〇
研究科DP
全学DP
教職課程の学修目標

講義目的・到達目標

講義目的

本講義は、「プログラミング演習」および「コンピュータ実習I」で習得した基礎的なプログラミング技術を発展させ、工学分野において実用的に活用できる情報処理能力を身に付けることを目的とします。

前半では、C言語による実習を通じて、データ構造やアルゴリズムの考え方を理解し、計算効率やメモリ管理を意識したプログラム設計と実装能力を養います。

後半では、Pythonを用いた実習により、数値計算、データ処理、可視化、ファイル入出力などの基礎を学び、外部ライブラリの利用や機械学習の初歩的な活用を体験します。

文法の習得にとどまらず、問題の構造を分析し、適切な手法を選択して実装し、実行結果を確認して考察する一連の過程を重視することで、将来の専門分野において情報技術を主体的に活用できる基礎力の習得を目指します。


到達目標

  1. C言語によるプログラムについて、データ構造やアルゴリズムの観点から処理内容を説明できます。

  2. 計算量やメモリ使用量を考慮し、基本的なアルゴリズムをC言語で適切に実装できます。

  3. 与えられた仕様に基づき、適切なデータ構造やアルゴリズムを選択してプログラムを作成できます。

  4. Pythonを用いて、数値計算、データ処理、可視化を含む基本的なプログラムを作成できます。

  5. 実データや課題に対して処理手順を整理し、プログラムとして実装し、実行結果を基に考察できます。



授業のサブタイトル・キーワード
サブタイトル
C言語とPythonを用いた実践的プログラミングとデータ処理技法の習得

キーワード
  • C言語
  • Python
  • データ構造
  • アルゴリズム
  • 数値計算
  • データ処理
  • 可視化
  • 機械学習
  • プログラミング実習
講義内容・授業計画
【講義内容】
本講義では、C言語およびPythonを用いたプログラム作成実習を行い、アルゴリズムやデータ処理を実際に実装することを通して、プログラミングの基礎的な考え方と実装技術を段階的に修得します。
前半では、C言語による実習を通じて、連結リストや木構造などの基本的なデータ構造を扱い、それらを用いた探索およびソートアルゴリズムの実装を行います。処理手順や動作原理を確認しながら実装することで、アルゴリズムの理解を深めます。
後半では、Pythonを用いたプログラミング実習を行います。Python実習の前半では、開発環境の構築、基本文法、制御構造、データ構造および数値計算といった基礎
内容を学修します。Python実習の後半では、関数によるプログラムの構造化、ファイル入出力、外部ライブラリの利用、数値計算およびデータの可視化を扱います。さらに、実データを用いた処理を通じて、AIおよび人工知能関連技術の基礎として、機械学習ライブラリを用いた予測や判断の流れを体験します。
これらの実習を通して、異なるプログラミング言語における実装方法の共通点と相違点を理解し、課題内容に応じて適切なアルゴリズムや実装方法を選択し、その処理内容や結果を説明できる基礎的能力を養います。

【授業計画】
C言語のプログラミング実習
第1週 ガイダンス、実習環境の確認、連結リストの基本構造と操作。
第2週 木構造の基礎、木構造を用いた探索処理。
第3週 探索アルゴリズム、線形探索および二分探索。
第4週 ソートアルゴリズム、選択ソートおよび挿入ソート。
第5週 第1回 学習到達度確認実習(1〜4週目の内容)

Python言語のプログラミング実習
第6週 Python開発環境の構築、プログラムの基本実行。
第7週 変数および演算子、数値計算の基礎。
第8週 条件分岐および制御構造。
第9週 リストおよびタプルによるデータ管理。
第10週 第2回 学習到達度確認実習(6〜9週目の内容)

第11週 関数定義によるプログラムの構造化。
第12週 文字列操作、ファイル入出力および外部モジュールの利用。
第13週 NumPyおよびMatplotlibによる数値計算およびデータの可視化。
第14週 AIおよび人工知能に関する基礎、機械学習ライブラリを用いた予測および判断の体験。
第15週 第3回 学習到達度確認実習(6〜13週目の内容)
対面・遠隔の別
対面
実施方法及び遠隔上限適用対象の別
本授業は、原則として対面形式で実施します。
実習は学内の実習室において行い、実習用PCを使用してプログラムの作成および動作確認を行います。
授業資料の配布や連絡は、UNIPAを通じて行います。
生成AIの利用
利用する場面を限定し許可
生成AI注意点
本授業において、学内で実施する実習および第1回から第3回までのすべての学習到達度確認実習では、生成AIの利用を禁止します。
一方で、自宅等で行う予習および復習においては、学習内容の理解を深める目的に限り、生成AIの活用を認めます。
その際は、生成AIの出力をそのまま使用するのではなく、内容を自ら確認し、理解した上で活用してください。
教科書
例題で学ぶはじめてのC言語(第2版)
著者:大石 功幸、朝倉 宏一
出版社:ムイスリ出版
定価:2,310円(税別)
ISBN:978-4-89641-309-0

独習Python 第2版 
著者:山田 祥寛 
出版社:翔泳社 
定価:3,280円(税別) 
ISBN:978-4-7981-8949-9
参考文献
独習C 新版
出版社:翔泳社
ISBN:978-4-7981-5024-6

事前・事後学習(予習・復習)の内容・時間の目安

【事前学習】

  • 授業で使用するテキストや配布資料の該当箇所を事前に確認し、当日の実習内容や用語について把握した上で授業に臨みます。

  • 実習で扱うプログラムの構成や主要な処理内容について、あらかじめ確認します。

  • 目安として、各回0.5時間程度の事前学習を行います。

  • 全15回で、合計約7.5時間を想定しています。


【事後学習】

  • 授業で行った実習内容の理解を定着させるため、授業後にプログラムの整理や課題への対応を行います。

  • 提出課題の採点結果やコメントをUNIPAで確認し、必要に応じて修正を行います。

  • 目安として、各回0.5時間程度の事後学習を行います。

  • 全15回で、合計約7.5時間を想定しています。


【事前学習・事後学習の合計時間】

  • 事前学習および事後学習を合わせて、合計約15時間を想定しています。

アクティブ・ラーニングの内容

本授業では、演習を中心とした授業形態により、実践的なプログラミング能力の定着を図るため、アクティブ・ラーニングを取り入れます。

実習に必要な文法、アルゴリズム、データ構造などの基礎的事項については、事前に予習資料として配布し、学生はこれらを理解したうえで実習に臨みます。実習では、予習内容の理解を前提として進行し、文法やアルゴリズムに関する詳細な解説は行いません。


学生は、提示された課題に対して自ら考え、プログラムを作成し、実行結果を確認しながら試行錯誤を通じて課題解決に取り組みます。また、実習中は学生同士で意見交換や情報共有を行い、エラーの原因や処理方法について議論することで、多様な視点や解決手法を学びます。教員およびTAは、必要に応じて助言やフィードバックを行い、学生の主体的な学習を支援します。

これらの学習活動を通して、プログラミングに関する知識や技能の習得に加え、課題を分析し解決する力、ならびに他者と協働して学ぶ姿勢の形成を目指します。

成績評価の基準・方法

【成績評価基準】

本授業では、講義目的および到達目標に記載された能力(知識、技能、思考力、判断力)の到達度に基づき、成績評価を行います。

成績は100点満点で評価し、S(90点以上)、A(80点以上)、B(70点以上)、C(60点以上)を合格とし、所定の基準を満たした学生に単位を付与します。
評価にあたっては、特に以下の点を重視します。

  1. C言語によるプログラムについて、アルゴリズムおよびデータ構造の観点から処理内容を説明できること。

  2. アルゴリズムを理解したうえで、C言語により適切かつ効率的に実装できること。

  3. 指定された仕様を満たすプログラムを、計算量やメモリ使用量を考慮して作成できること。

  4. Pythonを用いて、基本的なプログラムを作成し、数値計算やデータ処理を適切に行えること。



【成績評価の方法】

最終成績は、以下の評価項目を総合して算出します。

  1. 1学習到達度確認実習①(C言語実習)
    各回100点満点で評価し、最終成績の30% を占めます。

  2. 学習到達度確認実習②(Python基礎実習)
    各回100点満点で評価し、最終成績の30% を占めます。

  3. 学習到達度確認実習③(Python応用実習)
    各回100点満点で評価し、最終成績の40% を占めます。


【受講態度について】
実習への取り組み状況や質問への対応状況は、上記1〜3の評価を行う際の参考とします。
なお、受講態度のみを理由とした加点は行いません。


【受講資格について】

  • 学習到達度確認実習①〜③のいずれかを欠席した場合、受講資格を失います。

  • 学習到達度確認実習および実習課題への未提出・欠席が、 合計で3回以上となった場合、受講資格を失います。

  • 本授業では、定期試験は実施しません。



課題・試験結果の開示方法
毎週提出する実習課題については、UNIPAのクラスプロフィール機能を通じて、点数およびコメントを返却します。
満点(100点)に達していない場合には、理解を深めることを目的として再提出を求めることがあり、修正後の内容を再評価します。

学習到達度確認実習の結果についても、UNIPAのクラスプロフィール機能を通じて、点数および講評を返却します。あわせて、全体的な傾向や評価の観点については授業内で説明し、今後の学習に活かせるようにします。

また、学生から要望があった場合には、オンライン会議システム等を利用して個別にフィードバックを行い、課題の改善点や学習方法について助言します。
履修上の注意・履修要件
本授業では、C言語およびPythonを用いた実習を通じて、プログラミングの基礎から応用までを段階的に学修します。
そのため、「プログラミング演習」「コンピュータ実習」「プログラミング論Ⅰ」および「プログラミング論Ⅱ」の履修は、本授業の履修にあたっての必須条件ではありませんが、「プログラミング演習」「コンピュータ実習」「プログラミング論Ⅰ」を修得済みであり、「プログラミング論Ⅱ」を履修済みであることが望まれます。
これらの科目で学修した内容を基礎として、本授業ではより発展的なプログラミング技術やアルゴリズムを、実習を通じて習得します。
なお、授業計画に記載された実習内容は、履修生の理解度や授業の進行状況に応じて、シラバスの範囲内で内容や順序を調整する場合があります。実習の進行や到達目標の達成状況に応じて柔軟に対応することが求められます。
実践的教育
該当しない
備考
授業を欠席する場合は、診断書または医療機関の領収書を、UNIPAのQ&A機能を通じて全担当教員に提出してください。
提出書類には、氏名および日付が確認できることが必要です。
なお、学習到達度確認実習については試験に準じて実施するため、欠席時に提出を認める書類は診断書のみとします。

本実習は、コンピュータ実習室に設置されたパソコンを使用して実施します。内容に支障のない範囲で、個人のノートパソコンを持ち込んで使用することも可能ですが、本科目の範囲外となる環境設定や個別の技術的問題に関する対応は行いません。
学習到達度確認実習はすべて、実習室備え付けのパソコンを使用して実施します。そのため、事前に備え付けパソコンの基本的な操作に習熟しておくことが必要です。操作方法の習熟不足を理由とした救済措置は行いません。
英語版と日本語版との間に内容の相違が生じた場合は、日本語版を優先するものとします。