第1回 基礎プログラミング II レポート課題 氏名:笹原千珠子 学籍番号:c109080A 語学クラス:英語3 コース(系):政策マネジメント ---- 1. A. UNIXについて コマンドを入力することで操作することができる。 ディレクトリにファイルを作りプログラムを保存したりする。 一人一人ホームを持っており、panとroyで同じように使うことができる。 Rubyについて emacsでプログラミングを書き、Ktermで実行する。 実行するために chmod +x プログラム名.rb で実行することができるようになる。 実行するときは ./プログラム名.rb で実行できる。 変数に入力したものを表示させたり計算したりする。 配列について 一つの変数に複数のデータが入る。 メソッドを使う使うことで変数に入れた複数のデータを並べ変えたり合計を出し たりできる。 正規表現について meta character を使って探したい条件の文字を検索することができる。 自由課題について 今までやった配列や正規表現を使い自分でプログラムを作った。 いくつかのグループに分かれてプログラムと広告ページを作り発表した。 このとき、tgif や gimp で画像やロゴの作り方も学んだ。 思い出したこと 夏期休暇が終わって、かなりのことを忘れていた。 タイピングなども遅くなっていたので前の早さまでには戻したい。 101教室で作ったワードなどのデータを /Windows に移動すると204、205教室で 移動できるのを思い出したのでレポートを書くときなど利用したい。 参考文献 ウェブページ 2010 年度 基礎プログラミング I 講義ノート 西村まどか http://roy/~madoka/2010/r1/ 以下すべて同ページから 1.Workstation とは / UNIX のいろは http://roy/~madoka/2010/r1/01/ 2.Ruby の基礎 / 計算が終ったら止まる問題 http://roy/~madoka/2010/r1/02/ 5.配列の構造 http://roy/~madoka/2010/r1/05/ 6.正規表現と検索 http://roy/~madoka/2010/r1/06/ 2. A. a. print 文で思い出を表示するプログラム b. #!/usr/koeki/bin/ruby print("夏の思い出\n") # print 文で文章を表示 print("海に行って\n") print("川に行って\n") print("山に行きました\n") c. print 文の中身を夏休みの思い出に変えた。 d. pan{c109080}% ./summer_a.rb [~/Ruby] 夏の思い出 海に行って 川に行って 山に行きました e. print 文の中身がきちんと表示された。 しかし、これだけでは少しさみしいので何秒か遅れて思い出が表示されるなどの 工夫があればよかったと思う。 B. a.思い出を見たい年齢の数字を入力するとその年の思い出がでてくるプログラム。 b. #!/usr/koeki/bin/ruby STDERR.print("15歳から19歳までの夏の思い出を表示します\n") #どんなプログラムかの説明 while true #以下の行動を繰り返す omoide = 0 #変数を omoide にする STDERR.print("何歳の思い出を見ますか?15から19の数字を入力して下さい\n終了するときは q を押して下さい: ") #操作の指示を表示 omoide = gets.chomp # omoide に入力した値を持ってくる if omoide == "q" #もし q を押したら break # while 文から抜ける elsif omoide == "15" #もし 15 を押したら print("宿題をを少しずつこなす") #この文章を表示 elsif omoide == "16" #もし 16 を押したら print("テレビを見ていた\n") #この文章を表示 elsif omoide == "17" #もし 17 を押したら print("犬の散歩\n") #この文章を表示 elsif omoide == "18" #もし 18 を押したら print("寝ていた\n") #この文章を表示 elsif omoide == "19" #もし 19 を押したら print("近所に買い物に行った\n") #この文章を表示 end # if から elsifまでの終了 printf("これが %d 歳のときの思いでの全てです\n",omoide) #検索終了の文章を表示。 %d の所に初めに入力した数字が入る end # while の終了 c.gets_method で 見たい思い出の年齢を読み取り、while true で繰り返すようにした。 数年分の思い出から見たい年を選ぶために、if と elsif を使って gets_method で入力した文字に応じて文章が出るようにした。 参考文献 ウェブページ 基礎プログラミング I 第3回 キーボードから入力して計算させるには 第 3 回目次 講義ノート 西村まどか http://roy/~madoka/2010/r1/03/ 基礎プログラミング I 第4回 プログラミングの方法 第 4 回目次 講義ノート 西村まどか http://roy/~madoka/2010/r1/04/ d. pan{c109080}% ./summer_b.rb [~/Ruby] 15歳から19歳までの夏の思い出を表示します 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: 15 宿題をを少しずつこなす これが 15 歳のときの思い出の全てです 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: 16 テレビを見ていた これが 16 歳のときの思い出の全てです 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: 17 犬の散歩 これが 17 歳のときの思い出の全てです 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: 18 寝ていた これが 18 歳のときの思い出の全てです 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: 19 近所に買い物に行った これが 19 歳のときの思い出の全てです 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: q pan{c109080}% [~/Ruby] e. 15歳から19歳という短い期間だけだが、なんとか表示することができた。 しかし、15から19以外の数字を押された時、たとえば 12 を押して見ると pan{c109080}% ./summer_b.rb [~/Ruby] 15歳から19歳までの夏の思い出を表示します 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: 12 これが 12 歳のときの思い出の全てです 何歳の思い出を見ますか?15から19の数字を入力して下さい 終了するときは q を押して下さい: q pan{c109080}% [~/Ruby] となって最後はちゃんと表示されたように見えるので、間違っていることがわか りにくかった。 指定した数字以外を押すとエラーが出るようにすればよかったと思う。 3.感想 久しぶりでほとんど忘れていたので前期に授業でやったところで思い出しながら できた。 思ったより時間がかかってしまったが、一応思っていたようなできあがりに近く てよかった。 共同学習者:金田麻美