Dizi Operatörleri
Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası. Ders 71 / 88.
Ruby, dizileri güçlü şekillerde birleştirmenize, karşılaştırmanıza ve değiştirmenize olanak tanıyan özel işleçler sunar. Bu işleçler, aynı anda birden fazla diziyle çalışmayı kolaylaştırır.
+ operatörü iki diziyi yeni bir dizide birleştirir:
a = [1, 2, 3]
b = [4, 5, 6]
combined = a + b
puts combined # Çıktı: 1, 2, 3, 4, 5, 6- operatörü, ilk dizide bulunan ve ikincisinde yer alan öğeleri kaldırır:
all_numbers = [1, 2, 3, 4, 5]
to_remove = [2, 4]
result = all_numbers - to_remove
puts result # Çıktı: 1, 3, 5& operatörü her iki dizide de ortak olan öğeleri (kesişimi) döndürür:
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
common = a & b
puts common # Çıktı: 3, 4| operatörü dizileri birleştirir ve yinelenenleri kaldırır (union):
a = [1, 2, 3]
b = [3, 4, 5]
union = a | b
puts union # Çıktı: 1, 2, 3, 4, 5Tüm bu işleçler yeni diziler oluşturur ve özgün dizileri değiştirmeden bırakır.
Görev
KolayHer biri virgülle ayrılmış tam sayılar içeren iki girdi satırı okuyun:
- İlk dizi (ör.
1,2,3,4,5) - İkinci dizi (ör.
3,4,5,6,7)
Aşağıdaki işlemleri gerçekleştirin ve sonuçları her biri kendi satırında olacak şekilde yazdırın:
- Her iki dizinin birleştirilmesinin her bir öğesini yazdırın (
+kullanarak) - Ayraç olarak
---yazdırın - Farkın her bir öğesini yazdırın (ikinci dizi çıkarılmış ilk dizi,
-kullanarak) - Ayraç olarak
---yazdırın - Kesişimin her bir öğesini yazdırın (ortak öğeler,
&kullanarak) - Ayraç olarak
---yazdırın - Birleşimin her bir öğesini yazdırın (yinelenenler olmadan birleştirilmiş,
|kullanarak)
Örneğin, girdiler 1,2,3,4,5 ve 3,4,5,6,7 ise çıktı şu şekilde olmalıdır:
1
2
3
4
5
3
4
5
6
7
---
1
2
---
3
4
5
---
1
2
3
4
5
6
7Girdiler 10,20,30 ve 30,40,50 ise çıktı şu şekilde olmalıdır:
10
20
30
30
40
50
---
10
20
---
30
---
10
20
30
40
50Girdiler 5,10,15 ve 1,2,3 ise çıktı şu şekilde olmalıdır:
5
10
15
1
2
3
---
5
10
15
---
---
5
10
15
1
2
3Kendin dene
# Giriş dizilerini oku
input1 = gets.chomp.split(',').map(&:to_i)
input2 = gets.chomp.split(',').map(&:to_i)
# TODO: Kodunuzu aşağıya yazın
# Aşağıdaki işlemleri gerçekleştirin:
# 1. + kullanarak birleştirme
# 2. - kullanarak fark
# 3. & kullanarak kesişim
# 4. | kullanarak birleşim
# Her sonucu işlemler arasında "---" ayırıcı ile yazdırınBu 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
4Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Mantıksal Operatörler Bölüm 47Hesap Paylaşımı Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcı Girdisi Alma13İleri Seviye Diziler
Aralıklar ile Dizi Dilimlemeİndeksler ile Dizi DilimlemeDizi OperatörleriInclude? Metodu2Değişkenler ve Veri Tipleri
Sayılar ve DeğişkenlerString Veri TipiBoolean Veri TipiSymbol Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıÖzet - Değişken Oluşturma8Döngüler
Aralıklar ile For DöngüsüWhile DöngüsüBreakNextÖzet - FaktöriyelTimes DöngüsüUntil Döngüsüİç İçe DöngülerÖzet - Dinamik Girdi3Operatörler Bölüm 1
Aritmetik OperatörlerModulo OperatörüAritmetik KısayollarÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel IO
puts ile Çıktı Almaprint ve p ile Çıktı AlmaDeğişkenlerle Çıktı Almagets ile Girdi AlmaChomp MetoduTip DönüşümüÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Metotlar
Metot TanımlamaMetot ParametreleriDönüş DeğerleriÖzet - Sigma MetoduÖzet - Doğrulama MetoduVarsayılan Parametre Değerleri12Koleksiyonlar Üzerinde Yineleme
Each Yineleyicisiİndeks ile EachStringler Üzerinde YinelemeMap ve CollectKendi başına pratik yap: Online Ruby derleyicisi