이 연습 문제에서는 간판 회사가 간판에 넣을 맞춤 메시지를 만들 수 있도록 돕는 코드를 작성해요.
occasion 매개변수로 문자열을, name 매개변수로 사람 이름이 담긴 문자열을 받는 메서드 build_sign( )를 구현해요. 이 두 매개변수는 문자열 템플릿에 삽입되어 간판에 표시할 메시지를 출력해요.
build_sign( occasion = 'Birthday'
name = 'Rob').
" => "Happy Birthday Rob!"
나이를 받아서 그 나이에 따라 간판에 표시할 메시지의 일부를 결정하는 메서드 build_birthday_sign( )를 구현해요. 나이가 50 이상이면 간판에 mature 라는 단어가 들어가고, 그렇지 않으면 young 이라는 단어가 들어가요.
build_birthday_sign( 45 ).
" => "Happy Birthday! What a young fellow you are."
이름을 문자열 매개변수로, 연도를 숫자 매개변수로 받고 문자열 템플릿을 사용해 간판에 넣을 문구를 만드는 메서드 graduation_for( )를 구현해요. 이 문구는 줄바꿈으로 메시지의 두 줄을 구분해요.
graduation_for( name = 'Hannah'
year = 2022 ).
" => "Congratulations Hannah!\nClass of 2022"
간판의 내용이 담긴 문자열과 통화를 나타내는 문자열을 받는 함수 cost_of( sign currency )를 구현해요.
간판의 기본 가격은 주어진 통화로 20이고, 글자마다 2씩 더 들어요. (공백도 계산에 포함돼요.)
반환되는 문구에는 소수점 이하 두 자리로 표기한 간판 제작 비용과 그 뒤에 통화 문자열이 들어가요.
costOf( sign = 'Happy Birthday Rob!'
currency = 'euros');
// => "Your sign costs 58.00 euros."