El día de hoy vamos a resolver un ejercicio de programación en Python utilizando Programación orientada a objetos, también conocida como POO o como OOP.

Se trata de simular un Tamagotchi, la mascota virtual (o algo así, nunca tuve uno) en donde el mismo se debe alimentar, jugar, etcétera. El ejercicio dice así:

Elaborar una aplicación de línea de comandos en Python cuyo objetivo es emular un Tamagotchi usando Programación Orientada a Objetos. Todo personaje de Tamagotchi se basa es un animal y debe tener un nombre y género.

El nombre lo determina el usuario, y el género lo determina el sistema. El Tamagotchi tendrá una medición de hambre, de felicidad, y de salud. Las mediciones de hambre y de felicidad inician en 10, mientras que el de salud inicia en 0. Por cada turno que pase, se disminuye las mediciones de hambre y de felicidad en 1.

En cada evento se deben ejecutar una de las siguientes acciones: alimentar (incrementa medición de hambre 2 unidades), jugar (incrementa medición de felicidad 3 unidades), nada.

Si sobre alimentas a Tamagotchi, se incrementa la medición de salud en 2. No existe manera de decrementar la medición de salud. No existe manera de sobreexceder la medición de felicidad.

Cuando la medición de salud esté en 10, o la medición de felicidad esté en 0, o la medición de hambre esté en 0, el Tamagotchi muere y el juego termina.

Veamos entonces cómo simular esto usando clases y objetos en Python.

Explicación general

Lo que haremos será una clase con varios métodos que van a manejarse de acuerdo al planteamiento. Es cuestión de leer cuidadosamente lo que se solicita y hacer que el Tamagotchi en Python se comporte de esa manera.

Diseño de la clase

La clase queda como se ve a continuación. Fíjate en el constructor, pues en el mismo elegimos el género del Tamagotchi:

Vemos varios métodos. Por ejemplo, la función evento resta el hambre y la felicidad; y dependiendo de la acción invoca a jugar o alimentar. Estas funciones a su vez suben el nivel felicidad o de hambre, respectivamente.

También vemos la función muere, que regresa un booleano indicando si el Tamagotchi muere por alguna causa, ya sea salud, felicidad o hambre. Además, tenemos otra función que imprime el estado del Tamagotchi, es decir, sus niveles de hambre, felicidad y salud (así el jugador puede elegir lo que hace).

En el apartado del constructor vemos que se inician los valores y se elige el género, además de imprimirlo. Por cierto, este método recibe el nombre del Tamagotchi y lo guarda para usarlo más tarde.

Lo que falta ahora es crear un objeto a partir de la clase, y darle al usuario la posibilidad de interactuar con su mascota virtual.

Menú para Tamagotchi en Python

En el menú simplemente solicitamos al usuario el nombre de su mascota y hacemos un ciclo while que se traduce a algo como: mientras el Tamagotchi no muera, pregúntale al usuario lo que quiere hacer con él.

El código en Python queda así:

Al terminar el ciclo (Que es cuando el Tamagotchi ha muerto) simplemente imprimimos lo que ha pasado. Lo que ahora sí nos resta es invocar a la función main.

Poniendo todo junto

El código completo de esta simulación de Tamagotchi usando Python y la programación orientada a objetos queda así:

Yo estuve probando, se ve así:

Tamagotchi en Python – Simulación de mascota virtual con POO

Si tú quieres probar puedes ir a este enlace. También te dejo otro enlace para que explores más sobre Python.


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 4,747 suscriptores


parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

0 Comentarios

Deja un comentario

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada.

A %d blogueros les gusta esto: