Menu
Coddy logo textTech

Each Yineleyicisi

Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası — ders 65 / 88.

Ruby, diziler üzerinde döngü kurmak için for veya while döngülerini kullanmaktan daha zarif bir yol sunar. each yineleyicisi, bir koleksiyondaki her öğeyi işlemek için tercih edilen Ruby yöntemidir.

İşte temel sözdizimi:

fruits = ["apple", "banana", "cherry"]

fruits.each do |fruit|
  puts fruit
end

Bu, her meyveyi ayrı bir satıra yazdırır. Borular (|fruit|) arasındaki değişkene blok değişkeni denir. Yineleyici dizi boyunca ilerlerken her bir öğeyi geçici olarak tutar.

Tek satırlık bloklar için do...end yerine süslü parantez kullanabilirsiniz:

numbers = [1, 2, 3]
numbers.each { |n| puts n * 2 }

each metodu güçlüdür çünkü her bir öğe üzerinde herhangi bir işlem gerçekleştirebilirsiniz. İşte kümülatif toplamı hesaplayan bir örnek:

prices = [10, 25, 15]
total = 0

prices.each do |price|
  total += price
end

puts total  # Çıktı: 50

for döngülerinin aksine, each içindeki blok değişkeni blok içinde kalır; bu da kodunuzun daha temiz kalmasını sağlar ve beklenmedik davranışlara karşı daha az eğilimli hale getirir.

challenge icon

Görev

Kolay

Virgülle ayrılmış tam sayılar içeren tek bir giriş satırı okuyun (örneğin, 4,7,2,9,5).

Girişi bir tam sayı dizisine bölün, ardından aşağıdakileri yapmak için each yineleyicisini kullanın:

  1. Her sayının 3 ile çarpımını kendi satırına yazdırın
  2. Tüm sayıların toplamını hesaplayın ve döngüden sonra yazdırın

Dizi boyunca yinelerken toplamı biriktirmek için döngüden önce 0 olarak başlatılmış bir değişken kullanın.

Örneğin, giriş 4,7,2,9,5 ise, çıktı şöyle olmalıdır:

12
21
6
27
15
Sum: 27

Giriş 10,20,30 ise, çıktı şöyle olmalıdır:

30
60
90
Sum: 60

Giriş 1,2,3,4 ise, çıktı şöyle olmalıdır:

3
6
9
12
Sum: 10

Giriş 5 ise, çıktı şöyle olmalıdır:

15
Sum: 5

Kopya kağıdı

each yineleyicisi, diziler arasında döngü kurmak için tercih edilen Ruby yöntemidir:

fruits = ["apple", "banana", "cherry"]

fruits.each do |fruit|
  puts fruit
end

Dikey çizgiler arasındaki değişken (|fruit|), her bir öğeyi geçici olarak tutan bir blok değişkenidir.

Tek satırlık bloklar için süslü parantez kullanın:

numbers = [1, 2, 3]
numbers.each { |n| puts n * 2 }

Her bir öğe üzerinde, yürüyen toplam hesaplamak gibi işlemler gerçekleştirebilirsiniz:

prices = [10, 25, 15]
total = 0

prices.each do |price|
  total += price
end

puts total  # Outputs: 50

Kendin dene

# Virgülle ayrılmış tam sayıları oku
input = gets.chomp

# Girişi bir tam sayı dizisine böl
numbers = input.split(",").map(&:to_i)

# Toplam değişkenini başlat
sum = 0

# TODO: Kodunuzu aşağıya yazın
# Şunları yapmak için each yineleyicisini kullanın:
# 1. Her sayının 3 ile çarpımını yazdırın
# 2. Her sayıyı sum değişkenine ekleyin

# Nihai toplamı yazdır
puts "Sum: #{sum}"
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler