Menu
Coddy logo textTech

Varsayılan Parametre Değerleri

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

Bazen bir argüman sağlanmadığında bir metodun mantıklı bir yedek değere sahip olmasını istersiniz. Varsayılan parametre değerleri, çağıran kişi belirtmediğinde bir parametrenin ne olması gerektiğini tanımlamanıza olanak tanır.

Varsayılan bir değer atamak 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!

Bir argüman olmadan greet metodunu çağırdığınızda, Ruby varsayılan olarak "friend" değerini kullanır. Bir argüman sağladığınızda, bu varsayılanı geçersiz kılar.

Normal parametreleri varsayılan parametrelerle karıştırabilirsiniz, ancak varsayılan değeri olan parametreler, varsayılan değeri olmayanlardan sonra gelmelidir:

def power(base, exponent = 2)
  base ** exponent
end

puts power(5)     # Outputs: 25 (5 squared)
puts power(2, 3)  # Outputs: 8 (2 cubed)

Bu, metotları daha esnek hale getirir. Çağıranlar yalnızca temel bilgileri sağlayabilirken, isteğe bağlı ayrıntılar makul varsayılan değerlere döner.

challenge icon

Görev

Kolay

a ve b olmak üzere iki parametre alan multiply adında bir metot tanımlayın. b parametresinin varsayılan değeri 1 olmalıdır. Metot, a ve b'nin çarpımını döndürmelidir.

Girdiden iki tam sayı okuyun:

  1. İlk sayı (her zaman sağlanacaktır)
  2. İkinci sayı (sağlanabilir veya sağlanmayabilir)

Yalnızca bir girdi sağlanırsa, metodu sadece bu argümanla çağırın (b için varsayılan değeri kullanarak). İki girdi sağlanırsa, metodu her iki argümanla da çağırın.

Metot çağrısının sonucunu yazdırın.

Girdi formatı şu şekilde olacaktır:

  • İlk satır: ilk sayı
  • İkinci satır: ya bir sayı ya da none kelimesi

Örneğin, girdiler 7 ve 3 ise:

21

Girdiler 5 ve none ise:

5

Girdiler 12 ve 4 ise:

48

Kopya kağıdı

Varsayılan parametre değerleri, argümanlar sağlanmadığında yedek değerler sunar. Bir varsayılan 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!

Varsayılanı olan parametreler, varsayılanı olmayan parametrelerden 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ü)

Kendin dene

# Girdiyi oku
a = gets.chomp.to_i
b_input = gets.chomp

# TODO: b parametresi varsayılan değeri 1 olan multiply metodunu tanımlayın


# TODO: b_input'un "none" veya bir sayı olmasına bağlı olarak metodu uygun şekilde çağırın
# Eğer b_input "none" ise, multiply metodunu sadece a ile çağırın
# Eğer b_input bir sayı ise, multiply metodunu hem a hem de b ile çağırın

# Sonucu yazdır
puts result
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