0
0

More than 1 year has passed since last update.

Ruby even?メソッド

Posted at

even?メソッド

対象の数値が「偶数」かどうかを判断するメソッド。
対象の要素の値が偶数であれば真を返し、そうでない場合は偽を返します。
これはRubyが元々用意しているメソッドです。

下記URLはeven?メソッドの公式リファレンスです。
https://docs.ruby-lang.org/ja/latest/method/Integer/i/even=3f.html

例1

puts 10.even?
true
# ターミナルの返し

例2

puts 5.even?
false
 # ターミナルの返し

even?メソッドを使って偶数血の取得をするプログラムを作成します

配列にある値の中から偶数の数をカウントして出力するメソッドを作ります。

出力例:

count_evens([2, 1, 2, 3, 4])  3
count_evens([2, 2, 0])  3
count_evens([1, 3, 5])  0
def count_evens(nums)
  count = 0
  nums.each do |num|
    if num.even?
      count += 1
    end
  end
  puts count
end
count_evens([2, 1, 2, 3, 4])
3
# ターミナルでの返し

解説

  • count = 0
    今回は、配列の中の偶数がいくつあるのかを数える必要があります。
    カウントした数を保持するための変数が必要なので、変数countを用意しました。

変数countをeach文の処理に記述すると、処理が繰り返されるたびにcount = 0が実行されます。
そして、countの数値が0に上書きされるという仕組みです。

  • each文内
    配列の中にある数字をeach文で1つずつ取り出し、even?メソッドで偶数かどうかの判定をしてもらい、偶数だった場合はcountに1を足していきます。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0