Menu
Coddy logo textTech

기본 매개변수 값

Coddy Ruby 여정의 기초 섹션에 포함된 레슨. 88개 중 53번째.

때로는 인수가 제공되지 않을 때 method가 적절한 대체 동작을 사용하도록 하고 싶을 수 있습니다. default parameter 값를 사용하면 call하는 쪽에서 parameter를 지정하지 않았을 때 해당 parameter가 가져야 할 값을 Define할 수 있습니다.

기본값을 설정하려면 매개변수 이름 뒤에 = 기호를 사용하세요:

def greet(name = "friend")
  puts "Hello, #{name}!"
end

greet("Alice")  # 출력: Hello, Alice!
greet           # 출력: Hello, friend!

인수 없이 greet을 call하면 Ruby는 "friend"를 default로 사용합니다. 인수를 제공하면 default를 재정의합니다.

일반 매개변수와 기본값이 있는 매개변수를 함께 사용할 수 있지만, 기본값이 있는 매개변수는 기본값이 없는 매개변수 뒤에 와야 합니다:

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

puts power(5)     # 출력: 25 (5의 제곱)
puts power(2, 3)  # 출력: 8 (2의 세제곱)

이렇게 하면 메서드를 더 유연하게 만들 수 있습니다. 호출자는 필수 정보만 제공할 수 있고, 선택적 세부 정보는 합리적인 기본값으로 대체됩니다.

challenge icon

챌린지

쉬움

ab라는 두 매개변수를 받는 multiply라는 메서드를 정의하세요. 매개변수 b의 기본값은 1이어야 합니다. 메서드는 ab의 곱을 반환해야 합니다.

입력에서 두 정수를 읽으세요:

  1. 첫 번째 숫자(항상 제공됨)
  2. 두 번째 숫자(제공될 수도 있고 제공되지 않을 수도 있음)

입력이 하나만 제공되면 해당 인수만 사용하여 메서드를 호출하세요(b에는 기본값 사용). 입력이 두 개 제공되면 두 인수를 모두 사용하여 메서드를 호출하세요.

메서드 호출의 결과를 출력하세요.

입력 형식은 다음과 같습니다:

  • 첫 번째 줄: 첫 번째 숫자
  • 두 번째 줄: 숫자 또는 none

예를 들어 입력이 73인 경우:

21

입력이 5none인 경우:

5

입력이 124인 경우:

48

직접 해보기

# 입력 읽기
a = gets.chomp.to_i
b_input = gets.chomp

# TODO: 기본값이 1인 매개변수 b를 가진 multiply 메서드를 정의하세요


# TODO: b_input이 "none"인지 숫자인지에 따라 메서드를 적절히 호출하세요
# b_input이 "none"이면 a만으로 multiply를 호출하세요
# b_input이 숫자이면 a와 b 둘 다로 multiply를 호출하세요

# 결과 출력
puts result
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: 온라인 Ruby 컴파일러