(1) 摂氏温度を華氏温度に変換するメソッド
f = c * 9 / 5 + 32
(2) 華氏を摂氏に変換するメソッド
移項して変換式を求める。→移項とは両辺に同じ数を足す・引く・掛ける・割る
(2-2) 1度から100度まで変換して出力
(1..100).eachがわかりやすい。
(3) サイコロを振って出た目のメソッド
Random.rand(6)+1だが、これも(1..6).to_a.sampleのほうがわかりやすい。
(4) 10個のサイコロを振って合計
sum = 0
10.times do
sum += dice
endが普通だが、一時変数を使わず、Rubyっぽくカッコよく書くと
10.times.inject do |sum|
sum += dice
end
#もしくは
10.times.map{dice}.inject(:+)さらに、RailsならEnumerable#sumがあるのでこう書ける。
10.times.sum{dice}サーバ上で監視ツールによってスクリプトを実行するとき、環境変数が有効になっていないのでデフォルトのruby(/user/bin/rubyとか)が使われてしまう。
rbenvを使っている場合は、.ruby-versionに使用するバージョンを書いておいて、スクリプト実行前にPATH=$HOME/.rbenv/shims:$PATHを実行すると、指定したバージョンのrubyが使われる。
cf. http://shokai.org/blog/archives/7258
Bundlerで管理しているgem管理の環境で使う場合はbundle execをつけてbundle exec rubyのように実行する。
cf. bundle execを使わずに済む方法
http://qiita.com/naoty_k/items/9000280b3c3a0e74a618
gemのソースコードの格納場所(rbenvの場合)は、~/.rbenv/versions/…の下。
このパスが$LOADPATHに追加される。
requireされたとき、$LOADPATHから順にファイル名が検索され、見つかったものが読み込まれる。
Gemfileで指定したgem名は、同名が自動的にrequireされる。
MSNの天気APIのラッパーgem。
http://taiki45.github.io/weather_jp/
サンプルに「うどん県」で引けるように書いてあるけど、実際は不可能。
練習問題をやりたかったけどタイムアップ。