Iterator Each
Termasuk bagian Dasar-Dasar dalam perjalanan Ruby di Coddy. Pelajaran 65 dari 88.
Ruby menyediakan cara yang lebih elegan untuk melakukan perulangan melalui array daripada menggunakan for atau while. Iterator each adalah cara yang lebih disukai di Ruby untuk memproses setiap elemen dalam koleksi.
Berikut sintaks dasarnya:
fruits = ["apple", "banana", "cherry"]
fruits.each do |fruit|
puts fruit
endIni menampilkan setiap buah pada baris terpisah. Variabel di antara garis vertikal (|fruit|) disebut variabel blok. Variabel ini menyimpan sementara setiap elemen saat iterator menelusuri array.
Untuk blok satu baris, kamu dapat menggunakan kurung kurawal sebagai pengganti do...end:
numbers = [1, 2, 3]
numbers.each { |n| puts n * 2 }method each sangat berguna karena kamu bisa melakukan operasi apa pun pada setiap elemen. Berikut contoh yang menghitung total berjalan:
prices = [10, 25, 15]
total = 0
prices.each do |price|
total += price
end
puts total # Output: 50Tidak seperti perulangan for, variabel blok dalam each tetap berada di dalam blok, sehingga kodemu lebih rapi dan tidak mudah mengalami perilaku yang tidak terduga.
Tantangan
MudahBaca satu baris input yang berisi bilangan bulat yang dipisahkan dengan koma (misalnya, 4,7,2,9,5).
Pisahkan input menjadi array berisi bilangan bulat, lalu gunakan iterator each untuk:
- Cetak setiap bilangan dikalikan 3 pada barisnya sendiri
- Hitung jumlah semua bilangan dan cetak setelah perulangan
Gunakan variabel yang diinisialisasi dengan 0 sebelum perulangan untuk mengakumulasi jumlah saat kamu menelusuri array.
Misalnya, jika input-nya 4,7,2,9,5, output-nya harus:
12
21
6
27
15
Sum: 27Jika input-nya 10,20,30, output-nya harus:
30
60
90
Sum: 60Jika input-nya 1,2,3,4, output-nya harus:
3
6
9
12
Sum: 10Jika input-nya 5, output-nya harus:
15
Sum: 5Coba sendiri
# Baca bilangan bulat yang dipisahkan koma
input = gets.chomp
# Pisahkan input menjadi array berisi bilangan bulat
numbers = input.split(",").map(&:to_i)
# Inisialisasi variabel sum
sum = 0
# TODO: Tulis kodemu di bawah ini
# Gunakan iterator each untuk:
# 1. Cetak setiap bilangan yang dikalikan 3
# 2. Tambahkan setiap bilangan ke variabel sum
# Cetak nilai akhir sum
puts "Sum: #{sum}"Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Ringkasan: Logika SederhanaOperator Logika Bagian 3Operator Logika Bagian 47Kalkulator Pembagian Tagihan
Pesan Selamat DatangMengambil input dari Pengguna10FizzBuzz dengan Variasi
Gambaran Umum PermainanMetode FizzBuzz2Variabel dan Tipe Data
Angka dan VariabelTipe Data stringTipe Data booleanTipe Data SymbolMemeriksa Tipe DataKonvensi PenamaanRangkuman: Membuat Variabel5Pengambilan Keputusan
Pernyataan IfIf - ElseRekap: Kalkulator SederhanaIf - Else BersarangPernyataan Unless8Perulangan
For Loop dengan RentangWhile LoopBreakNextRangkuman: FaktorialTimes LoopUntil LoopPerulangan BersarangRangkuman: Input Dinamis3Operator Bagian 1
Operator AritmetikaOperator ModuloPintasan AritmetikaRingkasan: Matematika SederhanaOperator Perbandingan6Dasar Input dan Output
Output dengan putsOutput dengan print dan pOutput dengan VariabelInput dengan getsMethod chompKonversi TipeRangkuman: Kalkulator UsiaRangkuman: Benar atau Salah9method
Mendefinisikan methodParameter methodNilai KembalianRangkuman: Sigma methodRangkuman: Validation methodNilai Default Parameter12Melakukan Perulangan pada Koleksi
Iterator EachEach dengan IndeksMelakukan Perulangan pada StringMap dan CollectLatihan sendiri: Compiler Ruby online