Menu
CoddyTech

Metode Rentang

Termasuk bagian Logika dan Alur dalam perjalanan Ruby di Coddy. Pelajaran 7 dari 56.

Range memiliki method praktis yang membuatmu tidak perlu menulis perulangan secara manual.

include? memeriksa apakah suatu nilai berada dalam range:

range = 1..10
puts range.include?(5)   # true
puts range.include?(11)  # false

min, max, dan size bekerja langsung pada rentang:

puts (1..10).min   # 1
puts (1..10).max   # 10
puts (1..10).size  # 10

step melakukan iterasi pada rentang dengan loncatan dalam jumlah tetap, berguna saat kamu tidak ingin menggunakan setiap nilai:

(0..10).step(2) do |n|
  puts n
end
# 0, 2, 4, 6, 8, 10

Dan each bekerja sama seperti pada array:

(1..3).each { |n| puts n * n }
# 1
# 4
# 9
challenge icon

Tantangan

Mudah

Kamu diberi rentang inklusif dan daftar tebakan. Beri skor pada tebakan dan rangkum rentangnya.

Baca dua baris:

  1. Dua bilangan bulat yang dipisahkan spasi: start dan end_value
  2. Daftar tebakan bilangan bulat yang dipisahkan koma

Menggunakan rentang start..end_value, cetak:

  1. Hit: <n>, dengan n adalah jumlah tebakan yang berada di dalam rentang (gunakan include?)
  2. Span: <n>, dengan n adalah size rentang tersebut
  3. Multiples of 3 sum: <n>, dengan n adalah jumlah semua kelipatan 3 dalam rentang (gunakan step, mulai dari kelipatan 3 pertama pada atau setelah start)

Untuk input 1 10 pada baris pertama dan 3,5,11,7,-2 pada baris kedua, outputnya adalah:

Hit: 3
Span: 10
Multiples of 3 sum: 18

(Tebakan yang masuk: 3, 5, 7. Kelipatan 3 dalam 1..10: 3+6+9 = 18.)

Coba sendiri

start, end_value = gets.chomp.split.map(&:to_i)
guesses = gets.chomp.split(",").map(&:to_i)

# TODO: Hitung jumlah kecocokan dengan include?, rentang dengan size, dan jumlah kelipatan 3 dengan step
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler Ruby online