unisbadri.com » Python Java Golang Typescript Kotlin Ruby Rust Dart PHP
Perulangan

Perulangan #

Dalam bahasa Ruby, perulangan (looping) digunakan untuk menjalankan sekelompok perintah berulang kali. Ruby menyediakan berbagai cara untuk melakukan perulangan, dan masing-masing memiliki kegunaan dan sintaksis yang berbeda. Berikut adalah penjelasan lengkap mengenai berbagai cara perulangan di Ruby:

while Loop #

Loop while akan terus mengeksekusi blok kode selama kondisi yang diberikan bernilai true.

Sintaks:

while kondisi
  # blok kode
end

Contoh:

i = 0
while i < 5
  puts i
  i += 1
end

Penjelasan:

  • Loop ini mencetak nilai i dari 0 hingga 4. Kondisi i < 5 harus bernilai true agar loop terus berlanjut.

until Loop #

Loop until mirip dengan while, tetapi loop akan terus berlanjut hingga kondisi menjadi true.

Sintaks:

until kondisi
  # blok kode
end

Contoh:

i = 0
until i >= 5
  puts i
  i += 1
end

Penjelasan:

  • Loop ini mencetak nilai i dari 0 hingga 4. Kondisi i >= 5 harus bernilai true untuk menghentikan loop.

for Loop #

Loop for digunakan untuk iterasi melalui rentang atau koleksi objek, seperti array.

Sintaks:

for elemen in koleksi
  # blok kode
end

Contoh:

for i in 0..4
  puts i
end

Penjelasan:

  • Loop ini menggunakan rentang 0..4 untuk mencetak angka dari 0 hingga 4.

each Method #

Metode each adalah cara yang sering digunakan untuk iterasi melalui elemen-elemen dalam array, hash, atau koleksi lainnya. Ini adalah bentuk perulangan berbasis blok yang lebih idiomatik di Ruby.

Sintaks:

koleksi.each do |elemen|
  # blok kode
end

Contoh:

numbers = [1, 2, 3, 4, 5]
numbers.each do |number|
  puts number
end

Penjelasan:

  • Metode each iterasi melalui setiap elemen dalam array numbers dan mencetaknya.

map Method #

Metode map digunakan untuk mengiterasi koleksi dan mengembalikan array baru dengan hasil dari blok kode yang diterapkan pada setiap elemen.

Sintaks:

koleksi.map do |elemen|
  # blok kode yang menghasilkan nilai
end

Contoh:

numbers = [1, 2, 3, 4, 5]
squared_numbers = numbers.map { |number| number ** 2 }
puts squared_numbers.inspect  # Output: [1, 4, 9, 16, 25]

Penjelasan:

  • Metode map mengaplikasikan blok kode yang mengkuadratkan setiap elemen dalam array dan mengembalikan array baru dengan hasilnya.

select Method #

Metode select digunakan untuk memilih elemen-elemen dari koleksi yang memenuhi kondisi tertentu.

Sintaks:

koleksi.select do |elemen|
  # kondisi yang menghasilkan nilai boolean
end

Contoh:

numbers = [1, 2, 3, 4, 5]
even_numbers = numbers.select { |number| number.even? }
puts even_numbers.inspect  # Output: [2, 4]

Penjelasan:

  • Metode select mengembalikan array baru yang berisi elemen-elemen dari numbers yang memenuhi kondisi number.even?.

each_with_index Method #

Metode each_with_index memungkinkan iterasi melalui koleksi dengan akses ke indeks elemen saat iterasi.

Sintaks:

koleksi.each_with_index do |elemen, indeks|
  # blok kode
end

Contoh:

colors = ["red", "green", "blue"]
colors.each_with_index do |color, index|
  puts "#{index}: #{color}"
end

Penjelasan:

  • Metode each_with_index mengiterasi melalui array colors dan mencetak indeks dan nilai dari setiap elemen.

times Method #

Metode times menjalankan blok kode sejumlah waktu yang ditentukan oleh bilangan.

Sintaks:

n.times do
  # blok kode
end

Contoh:

5.times do |i|
  puts i
end

Penjelasan:

  • Metode times menjalankan blok kode sebanyak 5 kali, dengan variabel i bernilai dari 0 hingga 4.

break dan next #

  • break: Menghentikan loop saat ini dan keluar dari loop.

Contoh:

i = 0
while i < 10
  if i == 5
    break
  end
  puts i
  i += 1
end

Penjelasan:

  • break menghentikan loop ketika i mencapai 5.

  • next: Melompati iterasi saat ini dan melanjutkan ke iterasi berikutnya.

Contoh:

(1..10).each do |i|
  next if i.even?
  puts i
end

Penjelasan:

  • next melompati pencetakan angka genap dan hanya mencetak angka ganjil.

redo #

Metode redo digunakan untuk mengulangi iterasi saat ini tanpa memulai loop dari awal.

Contoh:

i = 0
while i < 5
  if i == 2
    i += 1
    redo
  end
  puts i
  i += 1
end

Penjelasan:

  • redo digunakan untuk mengulangi iterasi saat i sama dengan 2 tanpa memulai loop dari awal.

Kesimpulan #

Ruby menyediakan berbagai cara untuk melakukan perulangan, mulai dari while dan until untuk loop berbasis kondisi, hingga metode berbasis blok seperti each, map, dan select untuk iterasi koleksi. Memahami berbagai metode ini akan membantu Anda menulis kode yang lebih efisien dan idiomatik di Ruby. Jika ada bagian tertentu yang perlu penjelasan lebih lanjut atau jika Anda memiliki pertanyaan lain, jangan ragu untuk bertanya!

« Seleksi Kondisi
Fungsi »