データ構造とアルゴリズム論

Download Report

Transcript データ構造とアルゴリズム論

データ構造とアルゴリズム論
終章 専門科目におけ
るプログラミング
平成18年1月10日
森田 彦
第2回目テスト結果
第2回目テスト(12/27実施) 受験者数=135名
最高点=95 最低点=27 平均点=64.3
35
度数(人数)
30
25
20
15
10
5
0
20~39
40~49
3つのグループ
50~59
60~69
70~79
80~89 90~100
学習姿勢に関係!?
プリントの読み方と成績の関係
プリントの読み方と成績との関係
テスト平均点(グループ毎)
75
70
65
60
55
50
45
40
良く読んでいる
課題のみ読む
読んでいない
プリントを良く読む人ほど成績がよい!
提出レポートより①
~プリントを読むことの大切さ~
 「プログラミング・同演習」および「データ構
造とアルゴリズム論・同演習」を受講する
にあたってのアドバイスは「面倒でも説明
をよく読むこと!!」であると思う。
 この講義は最初、単位を取れないものだ
と覚悟した。それは、最初の講義で早くも
難しいという先入観を抱いたからです。し
かしそれは、講義を受けていくうちに消え
去っていきます。なぜなら、先生の話+プ
リントをよく読んで取り組んでいけばすぐ
に解けていくからです。
学習スタイル(姿勢)と成績の関係
学習姿勢と成績との関係
テスト平均点(グループ毎)
75
70
65
60
55
50
45
40
35
内容把握優先
課題作成優先
まず人に聞く
まず内容を把握してからプログラム作成にとりかかる
ことが大切!
レポートより②
~内容把握の重要さ~
 まず最初に、教科書やプリントをよく読んでから
演習に取り掛かることが大切であると思った。
何も読まずにいきなり演習をやろうとしても、
まったくわからないし、結局は説明文を読んで
いかないと手が付けられない、という状況になっ
てしまった。
 私はプログラミングの授業をはじめて受けてみ
たけれど最初はよく理解しようとしないでただ、
プログラムを打つという作業を繰り返していたが、
途中からそれだけでは解けない問題が出てきて
プログラムを理解しようとしました。実際テキスト
を見ればすべてが書いてあり、悩むところがな
いくらいじっくり書かれてありました。プリントも
実にわかりやすかったです。
楽しさと成績の関係
楽しさ度と成績との関係
テスト平均点(グループ毎)
75
70
65
60
55
50
45
1
2
3
4
苦痛 ← 楽しさ度 → 楽しい
楽しいと感じている人ほど成績も良い
5
レポートより③
~ 演習を楽しむコツ ~
 この講義を楽しむコツは、何でもすぐSAに
聞くのではなく自分で理解して解いていく
ことです。
 受講に際してのアドバイスは、とにかく、
森田先生の説明をしっかり聞くことです。
そうすることで自分の理解度が上がって
講義が楽しくなるし、なによりテストでいい
点が取れます。
総合成績(12/27時点)
総合成績(テスト平均点+応用課題)
最高点=123 最低点=43
40
35
度数(人数)
30
25
20
15
10
5
0
43~49
50~59
60~69
70~79
80~89
3名:応用課題で挽回を!
90~99 100~123
基礎課題提出状況(12/27)
基礎課題提出状況(12/27) 平均=44.3 [全課題45題]
140
T-3
120
度数(人数)
100
80
60
5名:要注意!
40
20
6章以前
7章
8章
9章
0
22~37
38~39
40~42
提出数
未提出課題がある人 14名
43~44
45
応用課題提出状況(12/27)
応用課題提出状況(12/27) 平均18.8 全課題34題
30
度数(人数)
25
20
15
10
5
0
0~5
6~10 11~15 16~20 21~25 26~30 31~34
提出数
①34題:0名
②33題:8名
③32題:8名
プログラム使用予定(その理解
を前提とする)科目
 3年次
基礎コンピュータグラフィックス
比較プログラム言語論
シミュレーション基礎論・応用論(4年次)
 4年次
知能情報基礎論・特論
ネットワークプログラミング論
システムプログラム論
ソフトウェア設計・開発論
アナウンス
 しっかりと最後の演習に取り組んでくださ
い(最初にアンケートを提出して下さい)。
 各自、課題提出状況の確認をして下さい。
 プログラム全般に関する質問・相談があ
れば、遠慮なく森田まで尋ねてください。
 本日の演習終了後、直ちに成績をつけま
す。
 演習時間終了後の課題は受け付けられ
ません。
基礎コンピュータグラフィックス
 プログラムを使ってCGを作成する課題が
出されます。
 前期テキスト「第8章CG入門」が関連しま
す。課題としては、12/6に学習した「第7章
再帰処理」中のフラクタル図形の描画等
が出題されます。
比較プログラム言語論
 「プログラミング」、「データ構造とアルゴリズム
論」の理解を前提とします。
 「どうして色々な言語があるの?」、「どの言語を
知っておけば良いの?」といった疑問に対して、
討論形式で受講生全体で考えて行きます。
 プログラミング言語の発展の歴史を踏まえ、最
終的にオブジェクト指向言語の特徴を解説する
予定です。
 受講予定の人は、今年度のHP
http://ext-web.edu.sgu.ac.jp/HIKO/HikakuProg
を参照してみて下さい。受講生からのメッセージ
も掲載されているので参考になるはずです。
シミュレーション基礎・応用論
 シミュレーションは、コンピュータが活躍す
る典型的な場面。 → 計算機実験という
分野が発展(自動車の強度実験など)
↓
社会現象のシミュレーションも徐々に展開
 講義ではシミュレーションの基礎的理論
が紹介され、そのプログラムを作成する
課題が出されます。
知能情報基礎論・特論
 「学習する・考える」事をコンピュータにや
らせる知的情報処理のアルゴリズムを学
習します。
 題材としては、「ゲームを作ろう」をテーマ
に、オセロやビンゴゲームなどのゲームを
採り上げている様です。
 上のようなゲームのプログラムを作成す
る課題が出されます。
システムプログラム論
 Java言語のプラットフォーム非依存性の理
解を目的としています。
 そのためにJava仮想マシンの概念を学習
します。
Java言語の核心(動作原理)を理解
するための講義です。
ソフトウェア設計・開発論
 ソフトウェア(プログラム)の仕様を決め、
どのようにプログラムすれば良いかを立
案する、つまり設計する方法論を学習しま
す。
 「オブジェクト指向開発」がキーワードにな
ります。
将来、情報処理技術者を希望する学生に
は必須の科目です。
ネットワークプログラミング論
 チャットシステムやWebアプリケーションなど、具
体的なネットワークプログラムを例に採り上げ、
その動作原理(の概略)を解説します。
 その後、実際に各自がプログラムを作成・実行
させる課題を課して、実地にプログラミングを理
解することに重点を置く、講義・演習一体形式の
授業です。
 Java言語の理解が前提となります。
 2006年度以降は、担当者が交代し、内容が若
干変更になる予定です。