|
教員名 : 屋山 巴
|
開講年度
2025年度
開講学期
後期
科目名
プログラミング論II
授業種別
講義
科目名(英語)
Programming Techniques and Algorithms II
授業情報(授業コード・クラス・授業形態)
A1600051 プログラミング論II [S4][対面]
担当教員
屋山 巴
単位数
2.0単位
曜日時限
火曜4限
キャンパス
八王子
教室
15-105 Izumi05
学位授与の方針
1 基礎知識の修得 0 %
2 専門分野の知識・専門技術の修得 80 % 3 汎用的問題解決力の修得 70 % 4 道徳的態度と社会性の修得 20 % 具体的な到達目標
(1)複雑で多種多様な問題を解決するための基礎となるプログラムを,C言語を用いて作成することができる。
(2)例題プログラムや自作プログラムの動作を予測することができる。 (3)プログラム作成過程において生ずる問題点を様々な工夫で発見し,解決することができる。 受講にあたっての前提条件
プログラミング論Ⅱと同演習Ⅱは一体の科目であるから両科目を受講すること。
Webテキストを自分で読んで理解し,理解内容を課題で確認する主体的学習姿勢が求められる。 授業の方法とねらい
(ねらい)課題解決の手段として,コンピュータプログラミングのスキルを身に着けることが目的です。
プログラミングの習得には、①プログラムを読むことができる力、②課題を実行可能な作業に分解し、プログラムに翻訳する力を身に着ける必要があります。 本講義ではPythonを用いて、これらのプログラミング一般に通じる方法論を身に着けることを目指します。 プログラミング言語は数多く存在しますが、1つの言語においてプログラミングの考え方を身に着ければ、異なるプログラミング言語に応用することは容易です。 この講義を通じて生涯にわたって活きるプログラミングの基礎をマスターしてください。 AL・ICT活用
e-ラーニング等ICTを活用した自主学習支援/その他
第1回
授業形態
対面
事前学習
プログラミング論1,プログラミング演習1を学修した学生は,復習しておくこと。
可能であれば、pythonを実行する環境を用意しておくことが望ましい。 下記の公式ページよりAnacondaを各自のPCにインストールしておく。 講義には各自PCを持参してください。 https://www.anaconda.com/products/distribution 下記のページも参考になります。 https://www.python.jp/install/anaconda/ 1時間
授業内容
ガイダンス
プログラミング入門 演習環境の整備 エディタの利用 課題提出練習 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
2時間
第2回
授業形態
対面
授業内容
pythonプログラミングの準備
・仮想環境の構築 ・対話形式のコマンドの実行 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
4時間
第3回
授業形態
対面
授業内容
python プログラムの入り口(以下を習得する)
7.実行部での変数と「=」の意味がわかる。 8.scanfでキーボードから変数に数値を入力できる。 9.三角形の面積を求めるなど,簡単なプログラムが作成できる。 10.整数の割り算で,小数点以下が切り捨てられることを知っている。 11.整数の剰余演算「%」が使える。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
4時間
第4回
授業形態
対面
授業内容
処理の繰り返し(以下を習得する)
1.forループの基本的な制御構造がわかりプログラムを追跡できる。 2.forループにおけるカウンタ変数の役割が理解できる。(ループを抜け出したときのカウンタ変数の値もわかる) 3.2重のforループを追跡できる。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
4時間
第5回
授業形態
対面
授業内容
処理の繰り返しの続き
・配列の活用(リストを用いた繰り返し演算) 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
4時間
第6回
授業形態
対面
授業内容
処理の繰り返しの演習
・ここまでの内容について、実践的な課題に取り組む。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
4時間
第7回
授業形態
対面
授業内容
処理の選択(以下を習得する)
1.if文による処理の制御が分かる。 2.if-else文による処理の制御(二者択一)が分かる。 3.if-else if-...else文による処理の制御について,最初に真になったところが実行されること(多者択一)を理解する。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
5時間
第8回
授業形態
対面
授業内容
処理の選択(以下を習得する)
・「処理の繰返し」と「処理の選択」が合成された処理の流れを追跡することができる。 ・課題の実現方法を考え,「処理の繰返し」「処理の選択」を組み合わせてプログラムを作成することができる。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
5時間
第9回
授業形態
遠隔(オンデマンド)
授業内容
配列と文字・文字列(以下を習得する)
1.配列の宣言の仕方を修得する。 2.配列を使用することのメリットを理解する。 3.forなどの繰返しで配列要素を順に操作する方法を理解する。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
5時間
第10回
授業形態
対面
授業内容
配列と文字・文字列(以下を習得する)
・forなどの繰返しで配列要素を順に操作する方法を理解する。 ・配列の大きさ(要素数)と要素番号の関係を理解する。 ・二次元配列のイメージと表現方法を理解する。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
5時間
第11回
授業形態
対面
授業内容
関数(以下を習得する)
・ライブラリ関数の存在を理解し,ライブラリ関数の概要を調べる方法を知る。 ・自分で簡単な関数を作れる。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
5時間
第12回
授業形態
対面
授業内容
関数(以下を習得する)
・関数の仕様を明確に説明できる。 ・引数の値の受け渡し(呼び出し側が与えた値が引数にコピーされる)の様子を理解する ・関数の返す値の受け渡し方(return 値)を理解する。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
5時間
第13回
授業形態
対面
授業内容
関数(以下を習得する)
7.段階的詳細化プログラミングについて理解する。 事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
予想問題が提示されるので,試験の準備を行う。 5時間
第14回
授業形態
対面
授業内容
最終課題に取り組む。
事後学習・事前学習
別途指定する課題提出スケジュールに沿って,授業中に提出できなかった課題を提出する。
4時間
第15回
授業形態
対面
授業内容
講義全体の振り返り
事後学習
最終課題に引き続き取り組んでください。
2時間
成績評価の方法
4回以上欠席(課題が期限までに提出されない)場合は評価の対象となりません。
課題によって評価を行い、評価60点以上を合格(GPA Grade D以上)の目安とします。 受講生へのフィードバック方法
jupyter notebookを用いて演習を行います。
プログラムをみてほしい場合は、.ipynbを共有してください。 教科書
講義資料を提供しますので、教科書の購入は必須ではありません。
本講義の内容は、下記の書籍の内容を参考にしています。実践的に学びたい人は、手元に置くことを勧めます。 『入門 Python 3 第2版』Bill Lubanovic (著), 鈴木 駿 (監修), 長尾 高弘 (翻訳) オライリージャパン 『Python ゼロからはじめるプログラミング』三谷純(著)、 翔泳社 参考書
python3の参考書およびWeb上の参考サイトは多くあるので、⾃分に合ったものを利⽤することを勧めます。
本講義の内容は、下記の書籍の内容を参考にしています。 『入門 Python 3 第2版』Bill Lubanovic (著), 鈴木 駿 (監修), 長尾 高弘 (翻訳) オライリージャパン 『ゼロから作るDeep Learning —Pythonで学ぶディープラーニングの理論と実装』斎藤 康毅 (著)オライリージャパン 他 オフィスアワー
質問は「プログラミング論II演習」に関するものもも併せて
「プログラミング論II」の対面講義終了後直接、 あるいはメール、KU-LMSの質問登録を通じて受け付けます。 受講生へのメッセージ
プログラミングは、皆さんの作業を効率化する便利な技術です。
これまでプログラミングにハードルを感じていた人も、 Pythonなら簡単に、やりたいことが実践できるのを感じてもらえると思います。 ぜひ受講してください。 プログラミング論II演習と連動していますので、一緒に受講登録してください。 実務家担当科目
実務家担当科目ではない
実務経験の内容
教職課程認定該当学科
該当なし
その他の資格・認定プログラムとの関連
関連する科目でない
教育課程コード
Ⅱ2c
教育課程コードの見方【例】 Ⅰ2a(Ⅰ…Ⅰ群、2…2年配当、a…必修) ※ a : 必修 b : 選択必修 c : 選択 ※複数コードが表示されている場合には入学年度・所属学科の学生便覧を参照のこと
|