Menu
Coddy logo textTech

Alimentar a la mascota

Parte de la sección Object Oriented Programming del Journey de Rust de Coddy — lección 20 de 61.

challenge icon

Desafío

Fácil

¡Ahora que tu mascota existe, es hora de darle la capacidad de comer! En este paso, agregarás un método feed que te permitirá cuidar del hambre de tu mascota.

Basándote en tu módulo pet.rs existente, agrega un método feed que disminuya el nivel de hambre de la mascota. Al ser alimentada, el hambre de la mascota debe disminuir en 30, pero nunca debe bajar de 0. Después de alimentar, el método debe imprimir un mensaje que muestre que la mascota disfrutó su comida.

También necesitarás un método getter hunger para que puedas verificar el nivel de hambre de la mascota desde fuera del módulo.

En main.rs, leerás el nombre de la mascota y un valor de hambre inicial. Crea tu mascota, establece su hambre inicial, aliméntala una vez y luego muestra el nivel de hambre actualizado.

La salida debe seguir este formato:

{name} enjoyed the meal!
Hunger: {hunger_level}

Por ejemplo, si la entrada es:

Buddy
50

La salida debe ser:

Buddy enjoyed the meal!
Hunger: 20

Y si el hambre comienza en 20, alimentarla la llevaría a 0 (no negativo):

Buddy enjoyed the meal!
Hunger: 0

Necesitarás agregar un método set_hunger para inicializar el hambre con fines de prueba, ya que el constructor new establece el hambre en 0 por defecto.

Pruébalo tú mismo

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());
}

Todas las lecciones de Object Oriented Programming