COMPARTE ESTE ARTÍCULO

Nombre:
DNI:


Ejercicio Único (10 puntos)

En un videojuego ambientado en una ciudad futurista, existen diferentes tipos de robots que patrullan zonas del mapa. Cada robot tiene energía, se mueve y puede realizar acciones específicas. Desarrolla el siguiente sistema:


Parte A – Clases y herencia (5 puntos)

  1. Crea una clase Ciudad que representa el escenario, con límites XMax y YMax.
  2. Crea una clase base Robot con:
    • Atributos x, y (posición), energia (int), y una referencia a la ciudad.
    • El constructor debe inicializar la posición en coordenadas aleatorias dentro de la ciudad y establecer la energía en 100.
    • Método Mover() que cambia aleatoriamente la posición entre -2 y 2 en ambos ejes, sin salirse del mapa, y resta 1 de energía.
    • Método virtual Actuar() que devuelve "".
  3. Crea una clase RobotExplorador que sobrescriba Actuar() para devolver una de las siguientes frases aleatorias si tiene energía > 0:
    • "Explorando sector..."
    • "Escaneo ambiental en curso"
    • "Recolección de datos completada"
  4. Crea una clase RobotGuardian que posee una lista de alertas (string).
    • Su método Actuar() devuelve y elimina aleatoriamente una alerta si hay alguna. Si no, devuelve "".

Parte B – Métodos globales (3 puntos)

  1. Crea un método DescargarEnergia(List<Robot> robots, int x0, int y0, int rango) que reste 10 de energía a cada robot que esté a rango o menos de (x0, y0) (distancia Manhattan).
    • Los robots con energía negativa deben eliminarse de la lista.
  2. Crea un método MensajesGuardianes(Robot[] robots) que recorra el array y retorne una cadena con los resultados de Actuar() de todos los RobotGuardian.

Parte C – Operación sobre listas (2 puntos)

  1. Crea un método TopNRobotsConMasEnergia(Robot[] robots, int n) que devuelva un array con los n robots con mayor energía.

✅ 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