Varsayılan Parametre Değerleri
Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası. Ders 53 / 88.
Bazen bir yöntemin, bir bağımsız değişken sağlanmadığında mantıklı bir geri dönüş değerine sahip olmasını istersin. Varsayılan parametre değerleri, çağıran bunu belirtmediğinde bir parametrenin ne olması gerektiğini tanımlamana olanak tanır.
Varsayılan bir değer ayarlamak için parametre adından sonra = işaretini kullanın:
def greet(name = "friend")
puts "Hello, #{name}!"
end
greet("Alice") # Çıktı: Hello, Alice!
greet # Çıktı: Hello, friend!greet işlevini bir bağımsız değişken olmadan çağırdığınızda Ruby, varsayılan olarak "friend" kullanır. Bir bağımsız değişken sağladığınızda, bu değer varsayılanı geçersiz kılar.
Normal parametreleri varsayılan parametrelerle karıştırabilirsin, ancak varsayılan değerlere sahip parametreler, varsayılan değeri olmayanlardan sonra gelmelidir:
def power(base, exponent = 2)
base ** exponent
end
puts power(5) # Çıktı: 25 (5'in karesi)
puts power(2, 3) # Çıktı: 8 (2'nin küpü)Bu, yöntemleri daha esnek hâle getirir. Çağıranlar yalnızca temel bilgileri sağlayabilir; isteğe bağlı ayrıntılar ise makul varsayılan değerlere geri döner.
Görev
Kolaymultiply adlı, iki parametre alan bir yöntem tanımlayın: a ve b. b parametresinin varsayılan değeri 1 olmalıdır. Yöntem, a ve b değerlerinin çarpımını döndürmelidir.
Girdiden iki tam sayı okuyun:
- İlk sayı (her zaman sağlanacaktır)
- İkinci sayı (sağlanabilir veya sağlanmayabilir)
Yalnızca bir girdi sağlanırsa, yöntemi yalnızca bu bağımsız değişkenle çağırın (b için varsayılan değeri kullanarak). İki girdi sağlanırsa, yöntemi her iki bağımsız değişkenle çağırın.
Yöntem çağrısının sonucunu yazdırın.
Girdi biçimi şu şekilde olacaktır:
- İlk satır: ilk sayı
- İkinci satır: bir sayı veya
nonesözcüğü
Örneğin, girdiler 7 ve 3 ise:
21Girdiler 5 ve none ise:
5Girdiler 12 ve 4 ise:
48Kendin dene
# Girdiyi oku
a = gets.chomp.to_i
b_input = gets.chomp
# TODO: Varsayılan değeri 1 olan b parametresiyle multiply metodunu tanımla
# TODO: b_input değerinin "none" veya bir sayı olup olmadığına göre metodu uygun şekilde çağır
# b_input "none" ise, multiply metodunu yalnızca a ile çağır
# b_input bir sayı ise, multiply metodunu hem a hem de b ile çağır
# Sonucu yazdır
puts resultBu 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