&size(20){プログラミング演習II-1,II-2のページ};
このページは,プログラミング演習II-1,II-2のページです.&br;
-担当者
-- 真栄城 哲也
--- Email: maeshiro あっと slis.tsukuba.ac.jp
--- 研究室: 研究棟 4F 409
--- オフィスアワー: 水曜1,2限
-- 于 海涛
--- Email: yuhaitao あっと slis.tsukuba.ac.jp
--- 研究室: 研究棟 3F 316
--- オフィスアワー: 水曜1,2限
----
#contents
----
*お知らせ [#za14580d]
お知らせです.クラス毎のお知らせの場合は,[木][金]で区別します.何もなければ全体向けです.
- 課題2の提出には&color(blue){[木曜クラス:「rep7.exe」]};,&color(blue){[金曜クラス:「rep8.exe」]};を使ってください.どちらもファイル名を「kadai-2.rb」としてください.
- 課題-A の改訂:実行結果例で,1行目が「Possion」となっていますが,正しくは「Poisson」です.
- 課題-A の改訂:プログラムの要件でアスタリスクの数を計算するための式に間違いがありました.また,プログラムの要件で小数点第 7 位以下は「四捨五入」としてください.12/11以前にダウンロードしている場合,再度ダウンロードしてください.
- [木] 木曜クラスの課題-1 提出について : 実行結果のチェックに問題が無いにも関わらず,rep5.exe で提出時に実行結果にエラーがあると表示され提出できない場合には,rep20.exe を使ってください.その際,提出する印刷物に,rep20.exe を使ったと,必ず記載してください.&color(red){注意 : rep20.exe の提出を受け付けるのは,プログラムの実行結果に間違いが無い場合です.それ以外の場合は,未提出として扱います.};
- 課題提出システムを使って提出時にエラーが出る等の場合,メールで連絡してください.その際,&color(blue){プログラムを添付};してください.
// - テキスト-3 を公開しました (11/10)
// - 日程,テキスト-1 と テキスト-2 を公開しました (11/4)
// - チェックの残りは2/10(月)1,2限,2/12(水)1,2限に行います.木金問いませんので,来れる時に(なるべく早く)来てください.
// -- SIZE(25){COLOR(RED){こちらの把握する[[未チェック学生リスト >
// http://klis.tsukuba.ac.jp/klib/Subjects/ProgII/text/check_nokori]]}}
// - 席の位置は指定です.指定位置は,授業開始時に提示されます.
// - なお, 第7回授業と第10回授業では,席の指定は無く.席の位置は自由です.
// - 第7回授業と第10回授業のレポートは,資料等,持ち込み自由です.
// - 使用するテキストを&color(red){授業の前日までに};印刷して,持参してください.必要なテキストは下記「日程」の「テキスト」覧に記載してあります.
* お知らせ(演習以外) [#udeff9cc]
*日程 [#r5396b65]
// &color(blue){準備中};
// |回|木曜日|金曜日|内容(予定)|テキスト|その他|
|回|木曜日|金曜日|内容(予定)|締切|その他|
|1|11/9|11/10|テキスト,課題-1|||
|2|11/16|11/17|課題-1|||
|3|11/24|12/1|課題-1|||
|4|12/7|12/8|課題-2|課題-1||
|5|12/14|12/15|課題-2|||
|6|12/21|12/22|レポート-1|課題-A||
|7|1/18|1/11|課題-B|課題-2||
|8|1/25|1/19|課題-C|||
|9|2/1|1/26|課題-C|課題-B||
|10|2/8|2/2|レポート-2|課題-C||
// |回|木曜日|金曜日||||
// |回|木曜日|金曜日|内容(予定)|テキスト||
// |予備日|2/12|2/6|チェック|||
**全学計算機システム停止等の情報 [#x5882dd1]
-詳細は[[春日サテライトニュース:http://www.slis.tsukuba.ac.jp/ipc/news/]]をご覧ください.
*テキスト [#m8972d2f]
// &color(blue){準備中};
-[[フローチャート:http://life.slis.tsukuba.ac.jp/prog2/text/flowchart_2017p.pdf]]
-[[テキスト-1:http://life.slis.tsukuba.ac.jp/prog2/text/text01_2017p.pdf]]
(入力データ:
[[data1-1.txt:http://life.slis.tsukuba.ac.jp/prog2/data/data1-1.txt]],
[[data1-2.txt:http://life.slis.tsukuba.ac.jp/prog2/data/data1-2.txt]],
[[data1-3.txt:http://life.slis.tsukuba.ac.jp/prog2/data/data1-3.txt]],
[[data1-4.txt:http://life.slis.tsukuba.ac.jp/prog2/data/data1-4.txt]]
)
-- [[説明スライド:http://life.slis.tsukuba.ac.jp/prog2/text/slide_text01_distp.pdf]]
-[[テキスト-2:http://life.slis.tsukuba.ac.jp/prog2/text/text02_2017p.pdf]]
-- [[説明スライド:http://life.slis.tsukuba.ac.jp/prog2/text/slide_text02_distp.pdf]]
*課題 [#y565d398]
// &color(blue){準備中};
- ruby プログラムのチェック:
-- (1) [[自動チェックシステム:http://life.slis.tsukuba.ac.jp/ruby_checker]]
-- (2) [[実行結果チェックシステム:http://life.slis.tsukuba.ac.jp/ruby_checker/task1]]
--&color(red){注意:};自動チェックシステムがエラーで動作しない場合,教員に連絡してください.
- 課題提出システム:[[利用方法:http://life.slis.tsukuba.ac.jp/prog2/docs/rep-submit/index.html]]をよく読んでください。
-- エラーが出る,問題がある等の場合,教員にメールで連絡してください.その際,&color(blue){プログラムを添付};してください.
-- メールによる課題の提出は受け付けません.
- [[作業記録入力システム:http://kc09.kc.tsukuba.ac.jp/bb3_two]]:[[利用方法:http://life.slis.tsukuba.ac.jp/prog2/docs/task_descript/manual.html]]をよく読んでください。
// -- 第2回目から使用可能になる予定です.
// - ruby プログラムの提出:
// -- (1) [[自動チェックシステム:http://life.slis.tsukuba.ac.jp/ruby_checker]]
// -- (2) [[実行結果チェックシステム:http://life.slis.tsukuba.ac.jp/ruby_checker/task1]]
// の結果を提出してください.
// ---テスト用 (プログラムの動作確認用) の小さいデータ:[[task1-thu-test.txt:http://life.slis.tsukuba.ac.jp/prog2/task1-thu-test.txt]]
// ---テスト用データの[[実行結果:http://life.slis.tsukuba.ac.jp/prog2/task1-thu-test-result.txt]] (品詞毎と品詞ペア毎の使用頻度のみ)
-課題-1の提出について
--印刷物と電子ファイルを提出してください.
---印刷物 : (1) プログラムチェックシステムの結果を印刷したもの,(2) 実行チェックシステムの結果を印刷したもの,(3) 完成したプログラムに基づいて新たに書いたフローチャート.グループ番号,学籍番号,氏名を記載すること.
---電子ファイル : 課題提出システムを使うこと
-課題-1 (木曜クラス)
---課題提出には&color(blue){「rep5.exe」};を使ってください.
---実行結果のチェックに問題が無いにも関わらず,rep5.exe で提出時に実行結果にエラーがあると表示され提出できない場合には,rep20.exe を使ってください.その際,提出する印刷物に,rep20.exe を使ったと,必ず記載してください.&color(red){注意 : rep20.exe の提出を受け付けるのは,プログラムの実行結果に間違いが無い場合です.それ以外の場合は,未提出として扱います.};
---入力ファイルをリダイレクトで読み込んで実行できるようにしてください.例 : 「ruby kadai.rb < data.txt」
---数値として判定するのは,単語が数値のみの場合です.例 : CO2 => 数値でない; 10-20 => 数値でない; 3.2954 => 数値.
---[[入力用のファイル (データ) :http://life.slis.tsukuba.ac.jp/prog2/data/task1_thu_data.zip]] (zip ファイルなので,ダウンロード後,展開してください)
---テスト用 (プログラムの動作確認用) の小さなデータ:[[task1-thu-test.txt:http://life.slis.tsukuba.ac.jp/prog2/data/task1-thu-test.txt]]
--- テストデータの実行結果を「実行結果チェックシステム」で確認できます.問題がある場合,教員に連絡してください.
-課題-1 (金曜クラス)
---課題提出には&color(blue){「rep6.exe」};を使ってください.
---&color(blue){データファイル「task1-fri-data1.txt」};に問題があったので,入力用のファイル (データ) を再度ダウンロードしてください (12/1 09:19)
---[[入力用のファイル (データ) :http://life.slis.tsukuba.ac.jp/prog2/data/task1_fri_data.zip]] (zip ファイルなので,ダウンロード後,展開してください)
---テスト用 (プログラムの動作確認用) の小さなデータ:[[task1-fri-test.txt:http://life.slis.tsukuba.ac.jp/prog2/data/task1-fri-test.txt]]
---テストデータの実行結果を「実行結果チェックシステム」で確認できます.問題がある場合,教員に連絡してください.
-課題-A
---課題提出には&color(blue){[木曜クラス:「rep9.exe」]};,&color(blue){[金曜クラス:「rep10.exe」]};を使ってください.どちらもファイル名を「taska.rb」としてください.
---&color(blue){改訂版 (12/11)};プログラムの要件でアスタリスクの数を計算するための式に間違いがありました.正しくは「床関数」です.
---&color(blue){改訂版 (12/11)};プログラムの要件で小数点第 7 位以下は「四捨五入」としてください.
---[[課題の内容 (1211改訂版) :http://life.slis.tsukuba.ac.jp/prog2/text/task_Ap.pdf]] .12/11以前にダウンロードしている場合,再度ダウンロードしてください.
---[[入力用のファイル (データ) :http://life.slis.tsukuba.ac.jp/prog2/data/taskA-params.csv]]
-課題-B
---[[課題の内容:http://life.slis.tsukuba.ac.jp/prog2/text/task_Bp.pdf]]
---[[入力用のファイル (データ) :http://life.slis.tsukuba.ac.jp/prog2/data/taskB_data.zip]]
---端末ウィンドウに出力する時、文字化けになる場合には、新しいデータを使ってください。[[入力用のファイル (データ)V2:https://www.dropbox.com/s/qei99g6vrqqo8zo/members.html?dl=0]]
-課題-2
---課題提出には&color(blue){[木曜クラス:「rep7.exe」]};,&color(blue){[金曜クラス:「rep8.exe」]};を使ってください.どちらもファイル名を「kadai-2.rb」としてください.
---木曜クラス [[入力用のファイル (データ) :http://life.slis.tsukuba.ac.jp/prog2/data/task2_thu_data.zip]] (zip ファイルなので,ダウンロード後,展開してください)
---金曜クラス [[入力用のファイル (データ) :http://life.slis.tsukuba.ac.jp/prog2/data/task2_fri_data.zip]] (zip ファイルなので,ダウンロード後,展開してください)
---課題-2の提出物:フローチャート、ソースコード(印刷物と電子ファイル)
*レポート [#y565d398]
// &color(blue){準備中};
// -[[レポートについての注意点:http://klis.tsukuba.ac.jp/klib/Subjects/ProgII/gakunai/report-generalp.pdf]]
// - 課題提出システムの[[利用方法:http://life.slis.tsukuba.ac.jp/prog2/docs/rep-submit/index.html]]をよく読んでレポートの作成をしてください。
ー レポートには,資料や本は持ち込み自由です.
*道具箱 [#c681d0c6]
-[[meadow で ruby のファイルを見易くする:http://life.slis.tsukuba.ac.jp/prog2/docs/emacs_ruby-mode/ruby_mode_manual.html]]
-[[コマンドプロンプトで日本語入力を行う:http://klis.tsukuba.ac.jp/klib/Subjects/ProgI/toolbox/cmd.html]]
-[[実行結果をファイルに保存する方法:http://klis.tsukuba.ac.jp/klib/Subjects/ProgI/toolbox/file.html]]
-[[プログラミング演習版 Ruby コーディング規約:http://klis.tsukuba.ac.jp/klib/Subjects/ProgI/toolbox/kiyaku.html]]
-[[Meadowで作成したファイルが文字化けする場合の修復法:http://klis.tsukuba.ac.jp/klib/Subjects/ProgII/toolbox/meadow-code-fix/]]
-[[Meadow を開いたときのデフォルトディレクトリ(フォルダ)を z: ドライブにする:http://klis.tsukuba.ac.jp/klib/index.php?meadow-z_drive_as_home]]
*演習支援情報 [#z9d015c6]
- [[ProgI/プログラミング演習I]]のページ
- 参考書:
-- [[たのしいRuby 第4版:http://www.amazon.co.jp/dp/4797372273/]](教科書)
-- [[プログラミングRuby 第2版 言語編:http://www.amazon.co.jp/dp/4274066428/]]
-- [[プログラミングRuby 第2版 ライブラリ編:http://www.amazon.co.jp/dp/4274066436/]]
-- [[プログラミング言語 Ruby:http://www.amazon.co.jp/dp/4873113946/]]
--- プログラミング言語としてのRubyの文法について詳しく説明しています。
-- [[Rubyアプリケーションプログラミング:http://www.amazon.co.jp/dp/4274064611/]]
--- Rubyのバージョンは古いですが、Ruby/Tkの比較的まとまった解説の章があります。
-- [[Effective Tcl/Tk (ASCII Addison Wesley Programming Series):http://www.amazon.co.jp/dp/4756131654/]]
--- Ruby/Tkそのものではありませんが、元になったTcl/Tkの詳しい解説書です。
- 参考Webページ
-- [[オブジェクト指向スクリプト言語Ruby:http://www.ruby-lang.org/ja/]]
--- Rubyのおおもとです.
-- [[Rubyリファレンスマニュアル:http://www.ruby-lang.org/ja/man/]]
--- リファレンスマニュアルです.辞書として使えます.
--- たとえば,「組み込みライブラリ」の「組み込みクラス」のあたりを見ると,各クラスに定義されたメソッドの一覧と定義・使い方等を調べることができます.便利なメソッドがたくさんあるので,ぜひ調べてみてください.
//-- [[Ruby/Tk - FrontPage:http://www.dumbo.ai.kyutech.ac.jp/~nagai/RubyTk/]]
//--- 九州工業大学大学院 永井秀利氏による情報
-- [[Ruby/Tkチュートリアル:http://pub.cozmixng.org/~the-rwiki/rw-cgi.rb?cmd=view;name=Ruby%2FTk+%A5%C1%A5%E5%A1%BC%A5%C8%A5%EA%A5%A2%A5%EB]]
--- Ruby/TkによるGUIプログラミングの入門編です。
-- [[逆引きRuby/Tk:http://pub.cozmixng.org/~the-rwiki/rw-cgi.rb?cmd=view;name=%B5%D5%B0%FA%A4%ADRuby%2FTk]]
//--- Ruby/Tkを用いたGUIプログラミングで、やりたいことに対するプログラムの書き方の例が列挙されています。
-- [[日本Rubyの会 公式Wiki:https://github.com/ruby-no-kai/official/wiki]]
--- Rubyのユーザグループ
-- [[Ruby - Wikipedia:http://ja.wikipedia.org/wiki/Ruby]]
--- WikipediaによるRubyの解説