Varsayılan Parametre Değerleri
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası — ders 51 / 78.
Bazen bir fonksiyonun, gerektiğinde özelleştirilebilen "standart" bir davranışa sahip olmasını istersiniz. Varsayılan parametre değerleri, çağıran kişi bunu sağlamadığında bir parametrenin ne olması gerektiğini tanımlamanıza olanak tanır.
Fonksiyon tanımında = kullanarak varsayılan bir değer belirlersiniz:
greet <- function(name = "Guest") {
print(paste("Hello,", name))
}
greet()
greet("Alice")Çıktı:
[1] "Hello, Guest"
[1] "Hello, Alice"Bir argüman olmadan çağrıldığında, fonksiyon varsayılan olarak "Guest" değerini kullanır. Bir değer sağladığınızda, bu değer varsayılanın üzerine yazar.
Zorunlu ve isteğe bağlı parametreleri karıştırabilirsiniz. Varsayılan değerleri olan parametreler, olmayanlardan sonra gelmelidir:
calculate_total <- function(price, tax_rate = 0.1) {
return(price + (price * tax_rate))
}
print(calculate_total(100))
print(calculate_total(100, 0.2))Çıktı:
[1] 110
[1] 120Burada, price zorunluyken tax_rate varsayılan olarak %10'dur. Bu, fonksiyonlarınızı esnek hale getirir - yaygın durumlarda kullanımı basit, ancak gerektiğinde özelleştirilebilir.
Görev
Kolayİki argüman alan calculate_shipping adında bir fonksiyon oluşturun:
weight- paketin ağırlığı (zorunlu)rate- ağırlık birimi başına maliyet (isteğe bağlı, varsayılan değer5)
Fonksiyon, weight * rate olarak hesaplanan nakliye maliyetini döndürmelidir.
İki satırlık bir girdi alacaksınız:
- Bir ağırlık değeri
- Bir oran değeri VEYA
defaultkelimesi
Eğer ikinci girdi default ise, fonksiyonu sadece ağırlık ile çağırın (varsayılan oranı kullanarak). Aksi takdirde, fonksiyonu hem ağırlık hem de sağlanan oran ile çağırın.
Döndürülen sonucu yazdırın.
Örneğin, girdiler şunlar ise:
10
defaultÇıktı şöyle olmalıdır:
[1] 50Eğer girdiler şunlar ise:
10
3Çıktı şöyle olmalıdır:
[1] 30Kopya kağıdı
Fonksiyon tanımında = kullanarak bir fonksiyonda varsayılan parametre değerleri ayarlayabilirsiniz:
greet <- function(name = "Guest") {
print(paste("Hello,", name))
}
greet() # Varsayılanı kullanır: "Hello, Guest"
greet("Alice") # Varsayılanı geçersiz kılar: "Hello, Alice"Zorunlu ve isteğe bağlı parametreleri karıştırırken, varsayılan değeri olan parametreleri olmayanlardan sonra yerleştirin:
calculate_total <- function(price, tax_rate = 0.1) {
return(price + (price * tax_rate))
}
calculate_total(100) # Varsayılan tax_rate değerini kullanır: 110
calculate_total(100, 0.2) # Özel tax_rate: 120Kendin dene
# Girdiyi oku
con <- file("stdin", "r")
weight <- as.numeric(suppressWarnings(readLines(con, n = 1)))
rate_input <- suppressWarnings(readLines(con, n = 1))
close(con)
# YAPILACAK: Kodunuzu aşağıya yazın
# 1. calculate_shipping fonksiyonunu weight (gerekli) ve rate (isteğe bağlı, varsayılan = 5) ile tanımlayın
# 2. rate_input değerinin "default" mu yoksa bir sayı mı olduğunu kontrol edin
# 3. Fonksiyonu uygun şekilde çağırın ve sonucu 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 (AND, OR)Mantıksal Operatörler Bölüm 2 (NOT)Özet - Basit MantıkVektörize Mantık Bölüm 1Vektörize Mantık Bölüm 27Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcıdan Girdi Alma10Farklı Bir FizzBuzz
Oyuna Genel BakışFizzBuzz Fonksiyonu2Değişkenler ve Veri Tipleri
Sayısal Veri TipiTam Sayı Veri TipiKarakter Veri TipiMantıksal Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıEksik Değerler: NAÖzet - Değişken Oluşturma8Döngüler
For DöngüsüWhile DöngüsüBreakNext (Continue)Özet - FaktöriyelDizi Oluşturma (seq, :)İç İçe DöngülerÖzet - Dinamik Girdi3Operatörler 1. Bölüm
Aritmetik OperatörlerTam Sayı Bölmesi ve Mod AlmaAtama OperatörleriÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel Giriş-Çıkış
Print ÇıktısıÇıktı için Cat KullanımıDeğişkenlerle Çıktı Almakreadline() ile Girdi OkumaTip Dönüşümü TemelleriÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Fonksiyonlar
Fonksiyon TanımlamaFonksiyon ArgümanlarıDönüş DeğerleriÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Parametre Değerleri