講義ページ
https://lsnl.jp/l/pro3
https://lsnl.jp/~ohsaki/lecture/pro3/2024/
講義ページ (全クラス共通)
https://ist.ksc.kwansei.ac.jp/prog3/
[授業開始時に提出] 出席確認フォーム (パスワードが必要です)
https://lsnl.jp/app/lecture/attend/show/pro3
[授業中に使用] クリッカー (パスワードが必要です)
https://lsnl.jp/app/lecture/clicker/show/pro3
講義ビデオ (パスワードが必要です)
https://lsnl.jp/video/pro3/2024/
連絡用メイリングリスト (スタッフ + TA に届きます)
pro3-staff[atmark]lsnl.jp
本文には、必ず学生番号・氏名・メールアドレス (@kwansei.ac.jp のもの) を明記してください。
大崎 博之
関西学院大学 工学部 情報工学課程
E-mail: pro3-staff[atmark]lsnl.jp
江見 太一 M2 (大崎研)
鈴木 翔大 M2 (徳山研)
井上 桃 M1 (大崎研)
E-mail: pro3-staff[atmark]lsnl.jp
「プログラミング実習 I」で習得した基本的な C 言語プログラミング技法を基に、 応用力を身につけることを目的とする。 配列、 構造体、 ポインタを用いたデータ構造構築法、 記憶の動的割り当てを学んだ後、 リスト処理、 ソーティング、 二分探索とハッシュ法等の基本アルゴリズムの実装技法を学ぶ。 また、 C++ の基本についても学ぶ。
演習形式にて授業を行い、 必要に応じて講義を行う。
授業中試験、 平常リポート
- 2 回の中間試験 (実技試験) に合格し、全ての必須課題を完成させることを単位取得の必要条件とする。
- 成績評価基準は別途詳細に記述した資料を配布する。
https://ist.ksc.kwansei.ac.jp/prog3/class4-sched.html
Q1.「プログラミング実習 I」で C 言語の基礎を学んだが、 それよりも複雑な内容をなぜ学ぶ必要があるのだろうか? スカラー変数 (char、 int、 double 型の変数)、 配列変数、 制御文 (while ループや for ループ)、 関数くらいを知っていれば十分ではないだろうか?
Q2. C 言語の応用力を身につけて、 それが何かの役に立つだろうか? 高度なプログラムが書けるようになるのだろうか? 高速なプログラムが書けるようになるのだろうか? それとも、 役には立たないが、 単位取得のために我慢して覚える必要があるのだろうか?
Q3.世界中で利用されているアプリケーション○○○はどのように作られているだろうか? どのアプリケーションが C 言語で開発されているだろうか? C 言語で開発されているとすれば、 それはなぜだろうか? どうすれば自分も同じようなアプリケーションを C 言語で作成できるだろうか?
Q4.自分の思い通りのプログラムを書けるようになるためには、 何が必要だろうか? C 言語に詳しければ十分だろうか? 離散数学・アルゴリズムなどが必要だろうか? 必要だとすればそれはなぜだろうか?
チャペルに参加する予定のある人は 9/27(金) 5:00pm までにメールで連絡してください。
- スタート → code とタイプし、「Visual Studio Code-設定初期化」を実行 (各学期ごとに実行する必要がある)
- Visual Studio Code を起動する場合は、Cygwin64 Terminal の中から code コマンドを実行して起動する (メニューから起動するのではなく Cygwin Terminal のプロンプトから起動する)
1. 課題に取り組む (100 分)
2. 休憩 (30 分)
3. 課題の解説 (30 分)
4. 課題に取り組む (70 分)
- いろいろな人とチームになる
- チームの人数は自由に決めてよい
- しゃべる
- 質問する
- 説明する
- 動く (立ち歩く)
- チームで協力する
- チームに貢献する
教える/教わる/質問する/説明する
→ OK (望ましい行為)
他の受講生に教えてもらう
→ OK (望ましい行為)
TA さん/教員に教えてもらう
→ OK (望ましい行為)
自分のプログラムを見せる/他人のプログラムを見せてもらう
→ OK (必要なら)
自分のプログラムをあげる/他人のプログラムをもらう・写す
→ NG (禁止行為、「コピー」がダメ)
注意事項、 教育方針、 学習のポイント、 病欠/公欠の時に何をすればよいか等を説明しています。
大崎が担当する科目に共通の連絡事項・アドバイス
https://lsnl.jp/~ohsaki/lecture/
https://ist.ksc.kwansei.ac.jp/prog3/b1.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/01.pdf
授業実施時間についてのアンケート
TBA
https://ist.ksc.kwansei.ac.jp/prog3/b2.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/02.pdf
https://ist.ksc.kwansei.ac.jp/prog3/b3.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/03.pdf
https://ist.ksc.kwansei.ac.jp/prog3/b4.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/04.pdf
4x3 ピクセルの BMP ファイル
https://lsnl.jp/~ohsaki/lecture/pro3/2024/4x3.bmp
https://ist.ksc.kwansei.ac.jp/prog3/b5.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/05.pdf
https://ist.ksc.kwansei.ac.jp/prog3/b6.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/06.pdf
https://ist.ksc.kwansei.ac.jp/prog3/b7.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/07.pdf
https://en.wikipedia.org/wiki/Selection_sort
https://en.wikipedia.org/wiki/Insertion_sort
https://en.wikipedia.org/wiki/Quicksort
https://ist.ksc.kwansei.ac.jp/prog3/b8.html
講義ノート
https://lsnl.jp/~ohsaki/lecture/pro3/2024/08.pdf
C Reference Card (ANSI)
https://www.math.brown.edu/~jhs/ReferenceCards/CRefCard.v2.2.pdf