Menu
Coddy logo textTech

Dizileri Değiştirme

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

Dizi elemanlarına nasıl erişeceğinizi bildiğinize göre, şimdi onları nasıl değiştireceğinizi öğrenelim. Herhangi bir elemanı, indeksine yeni bir değer atayarak değiştirebilirsiniz:

fruits = ["apple", "banana", "cherry"]
fruits[1] = "mango"
puts fruits  # Çıktı: apple, mango, cherry

Bir diziye eleman eklemek için push metodunu veya shovel operatörünü (<<) kullanın. İkisi de elemanları sona ekler:

colors = ["red", "blue"]
colors.push("green")
colors << "yellow"
puts colors  # Çıktı: red, blue, green, yellow

Elemanları kaldırmak için Ruby birkaç seçenek sunar. pop metodu son elemanı kaldırır ve döndürür, shift ise ilk elemanı kaldırır:

numbers = [1, 2, 3, 4]
numbers.pop    # 4'ü kaldırır
numbers.shift  # 1'i kaldırır
puts numbers   # Çıktı: 2, 3

Ayrıca delete kullanarak belirli bir değeri kaldırabilirsiniz:

letters = ["a", "b", "c", "b"]
letters.delete("b")
puts letters  # Çıktı: a, c

delete öğesinin, belirtilen değerin tüm örneklerini diziden kaldırdığına dikkat edin.

challenge icon

Görev

Kolay

Aşağıdaki dizi size verilmiştir:

tasks = ["email", "meeting", "lunch", "report", "call"]

Üç girdi okuyun:

  1. Bir indeks (tamsayı) - değiştirilecek konum
  2. Yeni bir değer (metin) - o konum için yeni değer
  3. Silinecek bir değer (metin) - diziden çıkarılacak öğe

Aşağıdaki işlemleri sırasıyla gerçekleştirin:

  1. Verilen indeksteki öğeyi yeni değer ile değiştirin
  2. push kullanarak dizinin sonuna "<code>review" ekleyin
  3. Shovel operatörünü (<<) kullanarak dizinin sonuna "planning" ekleyin
  4. pop kullanarak son öğeyi çıkarın
  5. shift kullanarak ilk öğeyi çıkarın
  6. delete kullanarak belirtilen değerin tüm geçen hallerini silin

puts kullanarak son diziyi yazdırın.

Örneğin, girdiler 2, break ve call ise, çıktı şu şekilde olmalıdır:

meeting
break
report
review

Girdiler 0, standup ve report ise, çıktı şu şekilde olmalıdır:

meeting
lunch
call
review

Girdiler 4, demo ve lunch ise, çıktı şu şekilde olmalıdır:

meeting
report
demo
review

Kendin dene

# Başlangıç dizisi
tasks = ["email", "meeting", "lunch", "report", "call"]

# Girdileri oku
index = gets.chomp.to_i
new_value = gets.chomp
value_to_delete = gets.chomp

# TODO: Kodunuzu aşağıya yazın
# 1. Verilen indeksteki öğeyi yeni değerle değiştir
# 2. Talimatlardaki tam metni push kullanarak sona ekle
# 3. "planning" öğesini shovel operatörü << kullanarak sona ekle
# 4. pop kullanarak son öğeyi kaldır
# 5. shift kullanarak ilk öğeyi kaldır
# 6. delete kullanarak belirtilen değerin tüm oluşumlarını sil

# Son diziyi yazdır
puts tasks
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