第 28 回 Ruby/Rails 勉強会@関西に関するブログ

現在 Ruby 関西の勉強会 Wikiトラックバックできないようになっている。
spam 対策らしい。spammer 憎い。

第 28 回勉強会のページトラックバックが全然来ないと思ったらそゆことか。

悲しいので検索して集めてみました。

主に演習問題で気になったところ、今後盗みたいところなど。

第28回 Ruby/Rails勉強会@関西 参加してきました - rubyneko

演習問題の大変適当な解答など

大変適当などと言いながら、大変読みやすいコード。

  • Range が (1..100) なのがいい。
  • 隙あらば inject 派。
  • Array#choice と Numeric#divmod をパクらせてもらいました。
    • 私はいつも Array#[Kernel#rand(Array#size)] してしまう。

第28回 Ruby勉強会@関西に参加してきました。 - らいとなひび

勉強会の二次会にて、

「rubyneko の答え見たら、やる気なくなった。」
raito3
「自分の答えが出来る前に他人の答え見ちゃダメ!」

と怒られた。

なので、id:raito3 さんの解答は後で見ましたよ。

# NetBeans では、UTF-8の使用を強制されるため、
# puts, print メソッドを書き換えるモジュールを用意しました。

端末の文字コードを utf8 にするんじゃダメですか。そうですか。

第28回 Ruby/Rails勉強会@関西 に行ってきたよ - はこべにっき#

素数判定が正規表現だけでできるのですよ.Rubyだとirb
'X' * n !~ /\A(XX+)\1+\z/
とやると,nが素数かどうかが判定できます.

これはすごい。

演習問題

def difficult_easy_problem
end

create_difficult_problem じゃなくて?

Ruby/Rails勉強会@関西 #28 - チナミニ

irb全然関係無くなってしまったのはご愛嬌。

私も勘違いしてたんですが、「irb で動作確認しながら作ってみましょう」なので、普段通りコード書けばよかったようです。

unless b == 0 || a < b || a % b != 0
  @ans = a.send(op, b)
else
  retry
end
  • 気に入らない問題は retry で作り直し。
  • unless ... が大変混乱します。

第28回 Ruby/Rails勉強会@関西に参加 - ekurodaの日記

いつも Bianchi に乗って来る人かな?

コード長いけど、表示とロジックは分離してないと気持ち悪くて仕方ないので、個人的にはこれで良し。include Observableするだけで一発でObserverが書けるrubyは最高。

デザインパターンが得意な人なんですね。

Ruby で学ぶデザインパターン」みたいな発表して欲しい。

  • 割り算がこっている。
  • Observer パターンが難しい (>_<)

第28回 Ruby/Rails勉強会@関西 行けなかった - morphine diary

夏風邪ひいてしまっていけませんでした。

勉強会に来てなくても宿題はやる偉い人。

question = rand(calc_max).to_s
          + operator(opr_kinds) + rand(calc_max).to_s
print question + ' = '
if eval(question).to_s == gets.chomp!
  • 問題を文字列で作って、Kernel#eval で答えを出す。

第28回 Ruby勉強会@関西に行ってきたよ! - ブログなんだよもん

課題そっちのけでひたすらirbrcをいじっていたのは内緒(ぉ

  • いきなり require 'rubygems' には驚いた。ふつう?
  • def ls path = "" の方がよくない?

第 28 回 Ruby/Rails 勉強会 - okkez weblog

とりあえず、うちの ~/.irbrc です。refe2 のところはあまりうまく動かない。まともに実装しようとすると bitclust を require してごにょごにょする必要があったりなかったりする。

  • method を to_s する。なるほど。
  • どんどん親へ向って捜す。すごい。
  • Kernel と Module の関係がややこしい。

演習問題 (模範解答)

  • readline ライブラリを使用して、打ち間違えたときも修正出来るようにしています。
  • 「むずかしい」の場合で最大40000(= 100 * 100 * 4) 通りしか問題は出題されないのであらかじめ計算してみました。

  • stdin って enter するまでは修正できなかったっけ。
  • あらかじめ全パターンを列挙。その手があったか。