COMPARTE ESTE ARTÍCULO

Nombre:
DNI:


Ejercicio Único (10 puntos)

En un juego de rol, los jugadores interactúan con diferentes personajes mágicos en un bosque encantado. Implementa las siguientes clases y métodos siguiendo buenas prácticas de programación orientada a objetos en C#:

Parte A – Clases y Herencia (5 puntos)

  1. Crea una clase Bosque con las dimensiones máximas XMax y YMax (enteros positivos).
  2. Crea una clase base PersonajeMagico con:
    • Coordenadas x, y (posición dentro del bosque),
    • Nivel de magia (int),
    • Un objeto Bosque al que pertenece,
    • Un método virtual Accion() que devuelve "",
    • Un método Mover() que desplaza aleatoriamente entre -2 y 2 en ambos ejes, sin salirse del bosque, y resta 1 punto de magia.
  3. Crea una clase Hechicero que herede de PersonajeMagico y sobrescriba el método Accion() para devolver una de estas frases aleatorias si su magia es mayor a 0:
    • "¡Abracadabra!"
    • "¡Fuego!"
    • "¡Luz divina!"
  4. Crea una clase Druida que también herede de PersonajeMagico, contenga una lista de string con nombres de plantas curativas, y sobrescriba el método Accion() para devolver y eliminar aleatoriamente una planta si tiene alguna; si no, devuelve "".

Parte B – Métodos Externos (3 puntos)

  1. Implementa un método AfectarZona(List<PersonajeMagico> lista, int x0, int y0, int n) que reduzca en n unidades el nivel de magia de cada personaje que esté a menos de n unidades de la posición (x0, y0). Elimina los personajes cuya magia quede negativa.
  2. Implementa el método FrasesDruidas(PersonajeMagico[] personajes) que devuelva una única cadena con la concatenación de los resultados de Accion() de todos los druidas.

Parte C – Estructura Dinámica (2 puntos)

  1. Implementa una pila llamada PilaHechiceros basada en nodos (NodoHechicero), con métodos Push(), Pop() y una propiedad Count. Cada nodo debe contener un Hechicero.

✅ Solución en C#



¿QUÉ TE HA PARECIDO EL ARTÍCULO? Danos tu opinión al final de la página.
Deja tu comentario y ayúdanos a crecer.


¡SÍGUENOS EN TUS REDES FAVORITAS!
AYUDANOS A CRECER Y QUE LLEGUEMOS A TODAS LAS PERSONAS QUE NOS NECESITANA. SÍGUENOS EN TUS REDES.
Entra AQUÍ y elíge donde seguirnos. 

 

 


NUESTRAS ÚLTIMAS PUBLICACIONES

INSTAGRAM

TIKTOK


 …Y PRONTO MUCHAS MÁS

AYUDANOS A CRECER Y A LLEGAR A TODAS LAS PERSONAS QUE NOS NECESITAN.

Contenido restringido

Acceso de usuarios existentes
   
Registro de un nuevo usuario
*Campo necesario

Categories:

Tags:

Comments are closed

Estado de acceso
ESTADO DE ACCESO
TRADUCTORES
COMPARTENOS
Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert
error: CONTENIDO PROTEGIDO