第42回 Ruby/Rails勉強会@関西
京都女子大学にて開催。
土曜日だというのに女子大生が大勢いて女子大感満載。
勉強会にもたくさんの女子大生が参加してくれた。
実践スクレイピング by ふるかわだいすけさん
モバイラーズオアシスというサイトを作るためにスクレイピングで色んなチェーン店の情報を集めたらしい。
IO クラスについて by cuzic さん
- IOクラスのマニアックなメソッドの使い方。
- 実際の動作、使い道を詳しく解説。
[あとでかく]
Ruby と WebCam で非実在なこと by にしたかおさん
- AR (ActiveRecord ではない)
- WebCam の画像にティーポットを重ねて表示。
- お茶を注いだりした。
- 車輪男
- 回帰分析は自分で書くな。
- 数値演算は落とし穴がいっぱい。
- 論文便利
- 結果だけもらえばいい。
Ruby 初級者向けレッスン by okkez さん
演習問題: 数値をローマ数字に変換。
- 省略なしの Integer#to_old_roman
- 4.to_old_roman # => "IIII"
- 省略ありの Integer#to_roman
- 4.to_old_roman # => "IV"
やってみた。
class Integer ARABIC2OLDROMAN = { 1000 => 'M', 500 => 'D', 100 => 'C', 50 => 'L', 10 => 'X', 5 => 'V', 1 => 'I', } ARABIC2ROMAN = { 1000 => 'M', 900 => 'CM', 500 => 'D', 400 => 'CD', 100 => 'C', 90 => 'XC', 50 => 'L', 40 => 'XL', 10 => 'X', 9 => 'IX', 5 => 'V', 4 => 'IV', 1 => 'I', } def to_old_roman to_roman(ARABIC2OLDROMAN) end def to_roman(symbols = ARABIC2ROMAN) roman = '' src = self symbols.each do |a, r| n, src = src.divmod(a) roman += r * n end roman end end [0, 1, 2, 3, 4, 5, 6, 9, 10, 11, 14, 15, 16, 19, 20, 21, 24, 25, 26, 40, 49, 50, 51, 54, 55, 56, 60, 99, 100, 101, 200, 400, 500, 600, 900, 999, 1000, 1969, 2000, 2004, 2010].each do |i| puts "%8d: %s\t%s" % [i, i.to_roman, i.to_old_roman] end # >> 0: # >> 1: I I # >> 2: II II # >> 3: III III # >> 4: IV IIII # >> 5: V V # >> 6: VI VI # >> 9: IX VIIII # >> 10: X X # >> 11: XI XI # >> 14: XIV XIIII # >> 15: XV XV # >> 16: XVI XVI # >> 19: XIX XVIIII # >> 20: XX XX # >> 21: XXI XXI # >> 24: XXIV XXIIII # >> 25: XXV XXV # >> 26: XXVI XXVI # >> 40: XL XXXX # >> 49: XLIX XXXXVIIII # >> 50: L L # >> 51: LI LI # >> 54: LIV LIIII # >> 55: LV LV # >> 56: LVI LVI # >> 60: LX LX # >> 99: XCIX LXXXXVIIII # >> 100: C C # >> 101: CI CI # >> 200: CC CC # >> 400: CD CCCC # >> 500: D D # >> 600: DC DC # >> 900: CM DCCCC # >> 999: CMXCIX DCCCCLXXXXVIIII # >> 1000: M M # >> 1969: MCMLXIX MDCCCCLXVIIII # >> 2000: MM MM # >> 2004: MMIV MMIIII # >> 2010: MMX MMX