gotagota日記

「面白きことは良きことなり」

たのしいRuby

『たのしいruby 第4版』第21章 Procクラス

第21章 Procクラス 模範解答はこちら (1) 問題 Array#collect のような動作をする my_collect メソッドを定義しろ、という問題です。 私的解答 def my_collect(obj, &block) ary = [] obj.each do |i| ary << block.call(i) end ary end ary = my_collect([1…

『たのしいruby 第4版』 第20章 TimeクラスとDateクラス

第20章 TimeクラスとDateクラス 模範解答はこちら (1) 問題 「"2013年5月30日午後8時17分50秒"」といったように、「年・月・日・時・分・秒」を使った時刻の文字列を Time オブジェクトに変換して返す jparsedate メソッドを定義しろ、という問題です。 私的…

『たのしいruby 第4版』第18章 FileクラスとDirクラス

第18章 FileクラスとDirクラス 模範解答はこちら (1) 問題 変数$:を使ってRubyが利用できるライブラリのファイル名を順に出力するメソッド print_libraries を定義しろ、という問題です。 私的解答 def print_libraries str = '' $:.each do |i| str << i + …

『たのしいruby 第4版』第17章 IOクラス

第17章 IOクラス 模範解答はこちら (1) 問題 テキストファイルからデータを読み込んで次の処理を行うスクリプトを作成しろ、という問題です。 私的解答 Twinkle, twinkle, little star, How I wonder what you are! Up above the world so high, Like a diam…

『たのしいruby 第4版』第16章 正規表現(Regexp)クラス

第16章 正規表現(Regexp)クラス 模範解答はこちら (1) 問題 「ローカルパート@ドメイン名」といった電子メールアドレス文字列から、ローカルパートを$1、ドメイン名を$2として取得する正規表現を作れ、という問題です。 私的解答 def getEMAddress(str) str …

『たのしいruby 第4版』第15章 ハッシュ(Hash)クラス

第15章 ハッシュ(Hash)クラス 模範解答はこちら (1) 問題 曜日を表す英語と日本語との対応を表すハッシュ wday を作成しろ、という問題です。 私的解答 wday = {:sunday => "日曜日", :monday => "月曜日", :tuesday => "火曜日", :wednesday => "水曜日", :…

『たのしいRuby 第4版』 第14章 文字列(String)クラス

第14章 文字列(String)クラス 模範解答はこちら (1) 問題 "Ruby is an object oriented programming language" という文字列に含まれる各単語を要素とする配列を作れ、という問題です。 私的解答 str = "Ruby is an object oriented programming language" a…

『たのしいRuby 第4版』 第13章 配列(Array)クラス

第13章 配列(Array)クラス 模範解答はこちら (1) 問題 1から100までの整数が昇順に並ぶ配列を作れ、という問題です。 私的解答 a = [] 100.times { |i| a << i + 1 } p a 模範解答にあるように to_a メソッドを使うのも簡単でいいですね。 (2)-1 問題 (1)の…

『たのしいRuby 第4版』第12章 数値(Numeric)クラス

第12章 数値(Numeric)クラス 模範解答はこちら (1) 問題 摂氏温度を華氏温度に変換する cels2fahr メソッドを定義しろ、という問題です。 私的解答 def cels2fahr(cels) fahr = (9.0 / 5.0) * cels + 32.0 fahr.to_f end 1.upto(100) do |i| puts cels2fahr(…

『たのしいRuby 第4版』やった

久しぶりのブログ更新であります。 前々から気になっていた『たのしいRuby』を読んでみました。 入門書という位置づけではありますが、深く読み込むと知っていた知識のさらに向こう側(?)みたいな情報もたくさんあって得ることが多かったです。 で、第3部か…