講評: レポートのお題についての細かい説明部分を省かないと 減点なので、減点します。それ以外はよかったです。 ---- 学籍番号 :C106XXXX 氏名 :XXXXXXXX 語学クラス:XXXX語XX 系 :XXXX系 1. 前期で学んだ項目について、まとめよ。本日復習した以外にも 思い出すことがあれば、それについても述べよ。 → 今日やったのは基本的なファイルを開いたり保存したり、保存した プログラム、ファイルを実行したり、プログラムを微妙に作ったり 文字を取って来たりとそこまで難しくないものの復習だった。 今日はやってなくても前期は絵を描いてホームページに貼ったり もっと難しめのプログラム等をやった。あと正規表現なるものも慣れ ないと難しく感じた覚えがある。 とりあえずktermでプログラム入力中にctrl+hでBack Spaceの効果が あるのにはびっくりだった。あとpkillも井上くんのおかげで覚えた。 2. 以下の問題について順番にできるところまで解け。 α. 今年の夏の思い出について語るプログラム summer_a.rb を作る。(C-) a. 考えた設定 作成したプログラムを具体的に説明する。 → 最初にコマンドを入力してもらいそれに従って実行するプログラム にした。 b. 作成したプログラムコードそのもの #!/usr/koeki/bin/ruby print("僕の夏の思い出を語りますか?\n") print("コマンド?\n") print("はい → yes \n") print("いいえ→ no \n") command = gets.chomp if command == "yes" printf("9月の初めに仙台の水族館に行きました。\n") printf("自分はペンギンが好きなので見てハイテンションになりました。\n") printf("とても楽しかったです。\n") printf("あとTSUTAYAでバイトもしました。\n") printf("しかしながら馴染まずにすぐやめてしまいました。\n") printf("後悔はしてませんがまたバイト探さなければなりません。\n") printf("でも17015円振り込まれていたので生活には若干困りますが困ってません。\n") printf("とまぁ、以上です。\n") elsif command == "no" printf("ありがとうございました。プログラム終了させて頂きます。\n") else printf("御手数ですが最初からやり直して下さい。\n") end c. もとにしたプログラムからの変更点 → なし。 d. プログラムを実行した結果画面 @yesの場合@ irsv{c106113}% ./summer_a.rb [~/Ruby] 僕の夏の思い出を語りますか? コマンド? はい → yes いいえ→ no yes 9月の初めに仙台の水族館に行きました。 自分はペンギンが好きなので見てハイテンションになりました。 とても楽しかったです。 あとTSUTAYAでバイトもしました。 しかしながら馴染まずにすぐやめてしまいました。 後悔はしてませんがまたバイト探さなければなりません。 でも17015円振り込まれていたので生活には若干困りますが困ってません。 とまぁ、以上です。 @noの場合@ irsv{c106113}% ./summer_a.rb [~/Ruby] 僕の夏の思い出を語りますか? コマンド? はい → yes いいえ→ no no ありがとうございました。プログラム終了させて頂きます。 @違う文字を入力した場合@ irsv{c106113}% ./summer_a.rb [~/Ruby] 僕の夏の思い出を語りますか? コマンド? はい → yes いいえ→ no other 御手数ですが最初からやり直して下さい。 e. 導き出された結果の考察 (ここで計算結果が合っているか調べる) → ひとまずコマンド制にして、入力すれば勝手にオートで 語っちゃうというプログラムを作ってみた。文章をいじったり もうちょっとプログラムを複雑にすればおもしろくなるかもしれ ないと思う。 f. 参考文献 (参照した本、ホームページなど) 〜 先生のHPより 第3回 文字の入出力 〜 http://roy/~madoka/2007/r1/03/03-12-toi_exp.html β. 幼少の夏の思い出について語るプログラム summer_b.rb を作る。 何歳の思い出について聞きたいかを尋ねたあと、その年の思い出 を語るようにする。 (C-) a. 考えた設定 作成したプログラムを具体的に説明する。 → 最初やったプログラムをちょっと変更して、年齢を入れれば 語るプログラムにした。 b. 作成したプログラムコードそのもの #!/usr/koeki/bin/ruby print("僕の幼少なる夏の思い出を語りますか?\n") print("幼少なので年齢を入力してください。\n") print("但し、5 〜 10 歳までお願いしますYO!\n") age = gets.chomp if age == "5" print("ごめんなさい。覚えてないっす。\n") elsif age == "6" print("小学校入学したあたりですっけか。自由研究頑張ってたかな。\n") elsif age == "7" print("小学校2年生ですね。確かこの時は自由工作頑張ってました。\n") elsif age == "8" print("小学校3年生、3年から大プールが使えるようになって泳いでましたね。\n") elsif age == "9" print("小学校4年!毎年夏に母親の実家、群馬に行ってました。\n") elsif age == "10" print("5年ですか。7月に学校行事で鶴岡の金峰山に2泊3日キャンプ行ってました。\n") print("しかしその金峰から帰って来たら両親と兄ちゃんが従兄弟の葬式へ。\n") print("バイク事故だったらしいです…\n") else print("サーセンwww5歳未満11歳以上の思い出は書いてないですwwww\n") print("あと11歳以上は幼少ではない気もします。\n") end c. もとにしたプログラムからの変更点 → 最初のプログラムを変えて、5〜10まで入力すれば出るようにし た。 d. プログラムを実行した結果画面 4の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 4 サーセンwww5歳未満11歳以上の思い出は書いてないですwwww あと11歳以上は幼少ではない気もします。 5の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 5 ごめんなさい。覚えてないっす。 6の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 6 小学校入学したあたりですっけか。自由研究頑張ってたかな。 7の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 7 小学校2年生ですね。確かこの時は自由工作頑張ってました。 8の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 8 小学校3年生、3年から大プールが使えるようになって泳いでましたね。 9の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 9 小学校4年!毎年夏に母親の実家、群馬に行ってました。 10の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 10 5年ですか。7月に学校行事で鶴岡の金峰山に2泊3日キャンプ行ってました。 しかしその金峰から帰って来たら両親と兄ちゃんが従兄弟の葬式へ。 バイク事故だったらしいです… 11の場合 irsv{c106113}% ./summer_b.rb [~/Ruby] 僕の幼少なる夏の思い出を語りますか? 幼少なので年齢を入力してください。 但し、5 〜 10 歳までお願いしますYO! 11 サーセンwww5歳未満11歳以上の思い出は書いてないですwwww あと11歳以上は幼少ではない気もします。 e. 導き出された結果の考察 (ここで計算結果が合っているか調べる) → 幼少時代の思い出があまりないという問題点があった。 それは作り話でも良いのかもしれないけれどもとりあえず プログラムはこういう感じで完成でいいのかなと思った。 f. 参考文献 (参照した本、ホームページなど) → 最初のと同じ。 3. 感想。忘れていたところや、よく復習したところについて述べ、 どこの何を参考に解決したか、などを記せ。 → 最初のcommandのとこから忘れていたのでそれを調べるとともに、ifの 使い方も微妙だったので見てみたら、同時に書いてあって思い出したので すんなりプログラムを完成することができた。ifの使い方、コマンドの入力 の仕方などはもう大丈夫だと思う。 前期の基礎プログラミングIのホームページを調べて即解決した。 わからないところがあれば調べれば今後もなんとか頑張れると思う。