開講年度
開講学部等
2026
工学部
開講学期
曜日時限
授業形態
AL(アクティブ・ラーニング)ポイント
後期
火3~6
講義
時間割番号
科目名[英文名]
使用言語
単位数
1062110240
プログラミング基礎及び演習
日本語
3
担当教員(責任)[ローマ字表記]
メディア授業
重松 大輝[SHIGEMATSU Taiki]
ー
担当教員[ローマ字表記]
重松 大輝 [SHIGEMATSU Taiki]
特定科目区分
対象学生
対象年次
1
ディプロマ・ポリシーに関わる項目
カリキュラムマップ(授業科目とDPとの対応関係はこちらから閲覧できます)
メディア授業
×
メディア授業とは,メディアを利用して遠隔方式により実施する授業の授業時数が,総授業時数の半数を超える授業をいいます。
メディア授業により取得した単位は,卒業要件として修得すべき単位のうち60単位を超えないものとされています。
授業の目的と概要
機械工学における数値計算・データ処理・可視化の基礎として,Pythonを用いたプログラミングの基本技能を,演習中心に修得する.本科目では Pythonの文法に加え,計算・データ入出力・グラフ化・簡単なモデル化を通じて,以降の専門科目(材料力学・熱力学・流体力学・機械力学・制御・実験データ解析等)に接続する実装力を養う.
授業の到達目標
1. Python実行環境を整備し、実行・エラー解析・デバッグの基本操作を説明・実行できる。
2. 変数・基本型(int/float/bool/str)と演算、文字列処理を理解し、目的に応じて使い分けられる。
3. 条件分岐(if)と繰り返し(for/while)を組み合わせ、意図した処理手順をコード化できる。
4. リスト/タプル/辞書などのデータ構造、およびNumPy配列の概念を理解し、適切に扱える。
5. 関数・モジュールを理解し、自作関数を設計できる。また標準ライブラリや外部ライブラリを活用できる。
6. ファイル入出力(テキスト、CSV)を行い、データの保存・読み込み・簡単な解析・可視化ができる。
7. 数値計算における誤差(丸め・桁落ち等)やデータ型の影響を、簡単な例で説明できる。
8. 小規模な課題について、仕様整理→実装→検証→改善のサイクルを回し、動作するプログラムとして完成させることができる。
授業計画
【全体】
最初の数回を使って,演習で用いるPython処理系と開発環境になれるとともに,Pythonのプログラム制御(条件分岐,ループ)と四則演算を用いた基本的なプログラムの作成演習を行う。その後,配列,文字列,関数,ファイル処理,ポインタ,構造体などの文法事項を教授するとともに,それらを用いたコーディングについて演習し,実用的に活用できるプログラムを作成するための基礎的素養を身につけさせる。毎週演習を行う。
各回の授業では,教科書で与えられている演習課題をその場でコーディングさせるとともに,正しい結果を得るコードの例も示すことにする.2回目以降の授業では,前回授業で宿題としたコーディング課題の解答例の解説も行う.
なお,第2回~14回までの進行は,状況を見て順番を入れ替えることがある.
項目
内容
授業時間外学習
備考
第1回
演習環境の構築とプログラミングに関する基礎知識
開発環境の構築
知っておきたい用語や概念の説明
演習環境の構築が完了しなかった者は完了させること.課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第2回
表示・演算・変数と型
print、入力、数値型、演算子、型変換、丸めの直観
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第3回
制御構文(1):条件分岐と論理
if/elif/else、比較、論理演算、簡単な仕様から分岐設計
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第4回
制御構文(2):繰り返しと反復設計
for/while、range、break/continue、計算の反復
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第5回
データ構造(1):リストと基本アルゴリズム
走査、集計、最大最小、探索、簡単なソート
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第6回
データ構造(2):タプル・辞書・集合/文字列処理
キー設計、頻度集計、文字列操作、フォーマット
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第7回
関数(1):分割・引数・戻り値・スコープ
仕様→関数化、再利用、テスト用入出力
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第8回
関数(2):モジュールと標準ライブラリ
math/random/statistics/pathlib 等
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第9回
ファイル入出力
open、with、読み書き、CSVでのデータ保存
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第10回
NumPy入門
配列、ベクトル化、簡単な線形代数(内積、行列積)、高速化の考え方
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第11回
可視化:Matplotlib入門
折れ線・散布図、軸・凡例、複数系列、レポート用図の作法
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第12回
プログラミングの活用1:常微分方程式の数値解法
解析解と数値解
差分近似
オイラー法
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第13回
プログラミングの活用2:フィッティング
フィッティングと最適化
最小二乗法
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第14回
これまでのまとめ1
pythonの文法に関する知識の確認
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第15回
これまでのまとめ2
pythonの文法に関する知識の確認
授業中演習問題のうち未完了問題のコーディングを行うこと.チェック用課題のコードを作成し提出すること.
(学習時間の目安:4時間以上)
第16回
期末試験
授業全体を通じた重要事項の理解度を問うペーパーテストを行う(PCは利用しない)
特になし
※AL(アクティブ・ラーニング)欄に関する注
・授業全体で、AL(アクティブ・ラーニング)が占める時間の割合を、それぞれの項目ごとに示しています。
・A〜Dのアルファベットは、以下の学修形態を指しています。
【A:グループワーク】、【B:ディスカッション・ディベート】、【C:フィールドワーク(実験・実習、演習を含む)】、【D:プレゼンテーション】
A: --% B: --% C: --% D: --%
成績評価法
毎回の課題・小テスト 30%
期末テスト 70%
講義への出席・課題の提出を欠格条件とする
教科書にかかわる情報
教科書
書名
新・明解Python入門
ISBN
9784815617837
著者名
柴田望洋著
出版社
SBクリエイティブ
出版年
2023
備考
参考書にかかわる情報
参考書
書名
独習Python
ISBN
9784798189499
著者名
山田祥寛著
出版社
翔泳社
出版年
2025
備考
メッセージ
現在の機械工学は,コンピュータなしでは成り立たないといっても過言ではないです.そのコンピュータでの手間のかかる作業のほとんどは,プログラムを自在に作れるようになると,自動・半自動化することができるようになります.将来の手間を省くために,ここで手間を惜しまずにプログラミングを習得してくれればと思います.
キーワード
プログラミング,Python
持続可能な開発目標(SDGs)
(インフラ、産業化、イノベーション)強靱(レジリエント)なインフラ構築、包摂的かつ持続可能な産業化の促進及びイノベーションの推進を図る。
関連科目
データサイエンス技術,生体・ロボット工学演習
履修条件
連絡先
機械社建棟5階B513
E-mail: shigematsu[at]yamaguchi-u.ac.jp
[at]を@に置き換える
オフィスアワー
月曜16:00-17:00.
普段は常盤キャンパスにいます.事前にメールで連絡ください.
ページの先頭へ