2025年度前期プログラミング演習1

曜日・時限 月曜日3時限 期別 前期 週時間数 2
ナンバリング HW130603
開講学科等 総合情報学部-デジタルゲーム学科
教員名 沼田 哲史
沼田 哲史
職務履歴

https://research.osakac.ac.jp/index.php?%e6%b2%bc%e7%94%b0%e3%80%80%e5%93%b2%e5%8f%b2

教員情報データベースに遷移します

目的

この授業の目的は、プログラミングとIT分野における基本的なスキルと知識を習得し、実践的なプログラム設計や問題解決に活用できる力を養うことです。C言語プログラミングの理論を学び、練習問題を繰り返し解くことを通じて、プログラミングとITの分野における、基本的なスキルの獲得と将来の目標達成に向けた準備を行いましょう。

授業計画

授業回 形式 学修内容 学修課題
1 A 授業ガイダンス
・授業の概要と目標、評価方法の説明
・プログラミングとは何か?
・コンピュータの基本原則
・デバッグの重要性
事前学修 このシラバスを読み、授業の構成について確認する。教科書の冒頭部分、18章から20章を読み、プログラミングの基本概念や学習方法について調べてくる。(2時間)
事後学修 授業で紹介されたプログラミング環境を使用して、簡単なプログラムを作成してみる。(2時間)
2 A,C C言語の基本構文、変数、数値計算
・C言語の基本構文を理解し、変数の宣言と数値計算を実行するスキルを身につける。
事前学修 教科書の1章・2章・3章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で学んだ基本構文を復習し、自身で簡単なプログラムを書いてみる。整数型や浮動小数点型を使って、実際のプログラムを作成し、データ型の操作を練習する。(2時間)
3 A,C 制御構造:条件判定、繰り返し
・条件判定と繰り返しの制御構造を理解し、これを使用してプログラムを設計できるようになる。
事前学修 教科書の4章・5章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で学んだ条件判定と繰り返しのスキルを復習し、新たな条件を設定してプログラムを作成する。forループとwhileループを使って繰り返し処理を設計し、さまざまな状況で実践的なプログラムを書く。(2時間)
4 C プログラミング演習:基本構文・制御構造の応用
・基本構文とデータ型の復習
・条件判定と繰り返しの制御構造の復習
・新しいプログラム課題を提示し、基本構文と制御構造を応用してプログラムを設計する時間を設ける。
事前学修 第2回と第3回の授業で学んだ内容を復習し、教科書の該当箇所を読む。(3時間)
事後学修 授業で解いた演習問題に再度挑戦し、理解度を確認する。授業で設計したプログラムを改善し、より効率的なコードを書く練習をする。(3時間)
5 A,C 配列と文字列の操作
・配列の定義、宣言、要素へのアクセス方法
・配列の操作:配列要素への値の代入、配列の初期化、配列の長さの取得
・文字列の基本概念、定義と扱い方
・文字列の操作:結合、比較、部分文字列の取得
事前学修 教科書の6章・7章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で学んだ配列と文字列の操作を復習し、新しい演習問題に取り組む。配列と文字列を活用して実用的なプログラムを設計し、応用スキルを向上させる。(2時間)
6 A,C 関数の使い方(前半)
・関数の呼び出し方、引数の渡し方
・関数の定義、パラメータ、戻り値の説明
・標準ライブラリ関数の利用:三角関数や乱数発生関数など
事前学修 教科書の8章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で学んだ関数の使い方に関する演習を復習し、新しい演習問題に取り組む。自作関数を改善し、より効率的で再利用可能な関数を設計する練習を行う。(2時間)
7 A,C 関数の使い方(後半)
・自作関数の作成
・関数の戻り値の取得方法と使い方
・再帰関数
事前学修 教科書の8章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で解いた演習問題に再度挑戦し、理解度を確認する。授業で設計したプログラムを改善し、より効率的なコードを書く練習をする。(3時間)
8 C プログラミング演習:関数と配列の応用 事前学修 第5回・第6回・第7回の授業で学んだ内容を復習し、教科書の該当箇所を読む。(3時間)
事後学修 授業で解いた演習問題に再度挑戦し、理解度を確認する。授業で設計したプログラムを改善し、より効率的なコードを書く練習をする。(3時間)
9 A,C 構造体と列挙型
・構造体の定義、初期化、メンバ変数へのアクセス方法
・列挙型の定義、利用方法
事前学修 教科書の9章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で解いた演習問題に再度挑戦し、構造体と列挙型のスキルを向上させる。自作の構造体や列挙型を設計し、実際のプログラムに応用する練習を行う。(2時間)
10 A,C 条件判定をマスターする
・bool値やbool変数の概念
・ド・モルガンの法則
・複雑な条件判定の最適化
事前学修 教科書の10章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で解いた演習問題に再度挑戦し、条件判定に関するスキルを向上させる。自作の既存のプログラムを見直し、条件判定の最適化を試みる。(2時間)
11 A,C 数値計算をマスターする(前半)
・定数の導入
・基数変換(10進数、16進数、2進数)
・ビット演算
事前学修 教科書の11章をよく読み、練習問題を解いてくる。(2時間)
事後学修 授業で学んだ定数の概念を復習し、他のプログラムや実践プロジェクトにおいて定数を実際に使用してみる練習を行う。基数変換に関する演習を行い、異なる基数で数値を表現し、変換するスキルを向上させる。ビット演算に関する演習問題を再度挑戦し、ビットレベルの操作を熟練させる。(2時間)
12 A,C 数値計算をマスターする(後半)
・整数と浮動小数点数の仕組み
・小数同士の値の比較
事前学修 教科書の11章をよく読み、練習問題を解いてくる。(2時間)
事後学修 整数と浮動小数点数の仕組みに関する授業内容を振り返り、実際のプログラムでこれらのデータ型を使用して計算を行う演習を行う。小数同士の値の比較に関する演習を行い、浮動小数点数の特性に対する理解を深める。数値計算に関連する実用的なプログラムを設計し、浮動小数点数を使用した計算に取り組む。(2時間)
13 A まとめ
・ここまでの振り返り
・質疑応答
・IT分野における学習マップの確認と目標設定
事前学修 教科書の初級のまとめ問題と中級のまとめ問題を解き、問題のあった箇所については、教科書の該当する箇所を読んでよく復習する。(3時間)
事後学修 受講中に作成したノートやメモを整理し、授業で学んだ主要なトピックやスキルを再確認する。これまでの学習成果を振り返り、今後のIT分野における学習マップを確認し、具体的な目標を設定する。その目標に沿って、具体的な学習スケジュールを作成し、目標に向かって進むための計画を立てる。(4時間)

授業形式記号

  • A:一斉授業(通常の講義)
  • B:問題発見・解決学習、プロジェクト学習
  • C:体験、実験、実習、演習など
  • D:調査 分析、解析など
  • E:ものづくり、作品制作
  • F:グループワーク(ディスカッション・ディベートを含む)
  • G:プレゼンテーション
  • H:地域・企業 連携型学習
  • I:その他

到達目標

・C言語の基本構文から始めて、プログラミングの基本概念を段階的に着実に習得することで、C言語の構文を使いこなし、簡単なプログラムを自力で作成できるようになること。
・基礎的な演習問題を徹底して繰り返し解くことにより、コーディングの基礎がしっかりと理解できるようになること。
・簡単な既存のアプリケーションのソースコードが読めるようになり、そこから特定の機能を実現しているコード箇所を特定して、思い通りの動作に修正できるようになること。
・問題解決スキルの向上: プログラミング演習を通じて、実世界の問題に対して効果的なプログラムを設計し、デバッグする能力を身につけること。
・IT分野の理解: IT分野全体の概要を理解し、受講生自身のITキャリアに向けた学習マップと目標を設定できること。

本科目に関連するディプロマ・ポリシー項目
〇 2024年度以降の入学生
  下記リンク先のカリキュラムマップを参照.
    https://www.osakac.ac.jp/about/policy/faculty/

○ 2023年度以前の入学生
  習得する資質・能力:知識・理解 【DP-W-1-1】
                               汎用的技能 【DP-W-2-2】
            習得する資質・能力:態度・志向性 【DP-W-3-3】

評価方法と評価観点

評価方法 配点合計知識・理解力応用力コミュニケーション力態度・志向性創造力 合計
定期試験またはレポート試験 100% 70% 30% 100%
小テスト、小論文 0%
グループワーク 0%
プレゼンテーション 0%
レポート、宿題 0%
授業での姿勢(ノート、質疑など) 0%
作品、パフォーマンス(実技、実演) 0%
その他1(具体的に: 0%
その他2(具体的に: 0%
100% 70% 30% 0% 0% 0% 100%

教科書・参考書

教科書:
・沼田 哲史「C言語本格トレーニング 基礎から応用までを徹底解説!」(共立出版社)(C言語によるプログラミングの基礎から応用までの細かな解説が載っており、演習問題と回答例・解説が充実している。)

オフィスアワー

・オフィスアワーは火曜日のお昼休み、教員室(10号館206)で実施します。
 ※学内外の用務のため、オフィスアワーでも教員が教員室に不在の可能性があります。
  事前に numata@osakac.ac.jp までメールでご連絡いただくのが確実です。

・授業のMoodleに「授業に関する質問・相談」のトピックを設け、随時、質問・相談を受け付けます。
 ※回答は授業期間中の平日9:30〜17:00に行います。

その他

・授業内容の理解を確認するためのプログラミング課題の提出があります。提出物は返却しませんが、内容チェックのうえ、授業内で良い回答の紹介や、改善が必要なポイントの解説を行います。
・出席回数が8回未満の場合は、D評価とします(これは予定なので再設定することがあります)。

実務経験のある教員による授業科目

この授業は、実務経験のある教員によって実施されます。この授業を担当する沼田は、プログラミングに関する書籍を多数執筆・出版しており、プログラミングの教材開発やソフトウェア開発に関する研究が専門です。