Paizaでよく使うRubyメソッド~その4~

スポンサーリンク
Paizaでよく使うRubyメソッド~その4~プログラミング

その他のナンバリングはこちら。

Paizaでよく使うRubyメソッド集〜その1〜

Paizaでよく使うRubyメソッド集〜その2〜

Paizaでよく使うRubyメソッド集〜その3〜

スポンサーリンク

Paizaでよく使うRubyメソッド〜その4〜

each_with_indexメソッド

each_with_indexメソッドについて

要素の繰り返し処理と同時に、その要素が何番目に処理されたのかも表すことができる。

each_with_indexメソッドの例

# 例1
array = ['apple', 'banana', 'melon']
array.each_with_index do |fruit, i| 
  puts "#{fruit}は#{i + 1}番目にあります"
end
# => applieは1番目にあります
# => bananaは2番目にあります
# => melonは3番目にあります

# 例2
array = [25, 24, 1, 30, 48]
array.each_with_index do |num, i| 
  if num >= 25
    puts "25以上の数字は#{i + 1}番目にあります"
  end
end
# => 25以上の数字は1番目にあります
# => 25以上の数字は4番目にあります
# => 25以上の数字は5番目にあります

以上のようにブロック変数を2つ作ることができます。

1つ目は配列の各要素が順番に代入されます。

2つ目はその配列の位置を表す数字が順番に代入されます。

例2では処理に条件分岐を加える事でTrueのものだけ表示させるようにしています。

to_fメソッド

to_fメソッドについて

割り算の結果の小数点以下を表示するためのメソッド。

to_fメソッドの例

avr = 50/7.to_f
puts avr

# => 7.142857142857143

通常は小数点以下は表示されずに 7 が表示されます。to_f を付けることによって小数点以下を表示させることができます。

to_i 文字列型(strings)を数値型(integer)に変換するメソッド

to_s 数値型を文字列型に変換するメソッド

roundメソッド

roundメソッドについて

四捨五入をするメソッド。

引数に数を指定すれば「小数点第〇位以下を表示」のようにできる。

roundメソッドの例

avr = 50/7.to_f
puts avr.round(1)
# 7.1

引数を1にする事で小数点第1位以下を四捨五入しているのがわかる。

floor , ceil メソッド

floor, ceil メソッドについて

小数点以下を切り捨てる時はfloor(床)、切り上げる時はceil(天井)を使う。

共に引数に数を指定すれば小数点第〇位以下を切り捨て(切り上げ)のようにできる。

floor , ceilメソッドの例

# 切り捨てfloor
hours = 30
days = hours / 24.to_f # => 1.25
puts days.ceil

# => 1
# 切上げceil
hours = 30
days = hours / 24.to_f # => 1.25
puts days.ceil

# => 2

to_f で小数点以下を表示させてから、それぞれ切り捨て(切り上げ)を行っています。

円周率を出すメソッド

円周率を出すメソッドについて

円周率を出すのは Math::PI を使う事で円周率を表示させることができる。

Math::PI の例

puts Math::PI
# 3.141592653589793

コメント