반려동물 먹이 주기
Coddy Rust 여정의 Object Oriented Programming 섹션에 포함된 레슨 — 61개 중 20번째.
챌린지
쉬움이제 반려동물이 존재하므로, 먹이를 먹을 수 있는 능력을 줄 차례입니다! 이번 단계에서는 반려동물의 허기를 관리할 수 있는 feed 메서드를 추가해 보겠습니다.
기존의 pet.rs 모듈을 바탕으로, 반려동물의 허기 수준을 감소시키는 feed 메서드를 추가하세요. 먹이를 주면 반려동물의 허기는 30만큼 감소해야 하지만, 0 미만으로 내려가서는 안 됩니다. 먹이를 준 후, 이 메서드는 반려동물이 식사를 즐겼다는 메시지를 출력해야 합니다.
또한 모듈 외부에서 반려동물의 허기 수준을 확인할 수 있도록 hunger 게터(getter) 메서드가 필요합니다.
main.rs에서는 반려동물의 이름과 초기 허기 값을 읽어옵니다. 반려동물을 생성하고, 초기 허기를 설정한 뒤, 한 번 먹이를 주고 업데이트된 허기 수준을 표시하세요.
출력은 다음 형식을 따라야 합니다:
{name} enjoyed the meal!
Hunger: {hunger_level}예를 들어, 입력이 다음과 같다면:
Buddy
50출력은 다음과 같아야 합니다:
Buddy enjoyed the meal!
Hunger: 20그리고 허기가 20에서 시작한다면, 먹이를 주었을 때 0이 되어야 합니다 (음수가 아님):
Buddy enjoyed the meal!
Hunger: 0new 생성자는 기본적으로 허기를 0으로 설정하므로, 테스트 목적으로 허기를 초기화하기 위한 set_hunger 메서드를 추가해야 합니다.
직접 해보기
mod pet;
use pet::Pet;
fn main() {
let mut name = String::new();
std::io::stdin().read_line(&mut name).expect("Failed to read line");
let name = name.trim().to_string();
let my_pet = Pet::new(name);
println!("Pet name: {}", my_pet.name());
}