Está en la página 1de 1

Ejercicio Mars Rover.

Implemente una clase Rover que permita automatizar el siguiente contexto:

 Los objetos de la clase Rover se caracterizan por tener una cantidad de potencia limitada (medida en
radioisotopos de plutonio), la potencia les permite llevar a cabo una serie de actividades propias de la
exploración marciana.
 Adicionalmente tienen una cámara que les permite tomar fotos tridimensionales en color o
bidimensionales en blanco y negro. Las fotografías tomadas en blanco y negro son (por omisión) de
1024 x 1024 pixeles. Las fotografías tridimensionales pueden tener un máximo de 1200 x 1200 pixeles.
Si los ingenieros de la NASA deciden tomar fotografías tridimensionales deberán indicar las
dimensiones que desean tomar.
 Los Rovers tendrán la capacidad de desplazarse hacia adelante, atrás, derecha e izquierda por medio
de coordenadas "x" y "y" de un plano cartesiano de 2 ejes (cuatro cuadrantes). La posición inicial de
todo Rover será (x=0,y=0). Los desplazamientos hacia adelante y hacia atrás modificarán en 1 de
forma positiva o negativa el valor de "y" respectivamente. Los desplazamientos hacia la derecha y
hacia la izquierda modificarán en forma positiva o negativa el valor de "x" respectivamente. También
debe existir la opción de desplazar el Rover (hacia adelante, atrás, derecha o izquierda) tantas
posiciones "x" ó "y" según lo ordene el controlador del Rover.
 Debe ser posible conocer la posición actual del Rover, en este caso el Rover deberá indicar cuál es su
posición (x,y) al momento de realizarse la consulta. Debe ser posible conocer la potencia disponible
del Rover cuando sea necesario.
 La cámara del Rover puede estar abierta o cerrada, por omisión, la cámara del Rover estará cerrada
para evitar la sobre exposición de radiación solar y partículas de polvo. El Rover no podrá tomar
fotografías si la cámara está cerrada.
 Adicionalmente, se debe considerar que cada desplazamiento consume potencia del Rover.
Desplazarse una posición hacia arriba, abajo, derecha o izquierda consume 0.5 radioisotopos de
plutonio.
 La toma de fotografías tridimensionales consume 0.25 radioisotopos de plutonio (independientemente
de su tamaño) y la toma de fotografías en blanco y negro consume 0.10 radioisotopos de plutonio.
 Al momento de crear los Rovers se debe poder indicar la cantidad de potencia que dispondrá el
vehículo, sino se indica, el Rover tendrá 10 radioisotopos de plutonio.
 Abrir o cerrar las cámaras consumen 0.05 radioisotopos de plutonio.
 Debe ser posible determinar el estado del Rover, se espera conocer la siguiente información: Potencia
inicial, potencia disponible, estado de la cámara (abierta|cerrada), cantidad de fotografías tomadas
(tridimensionales y/o blanco y negro), posición inicial, posición actual, y toda la lista de mandatos
recibidos por parte del controlador. Debe ser posible distinguir la lista de mandatos realizados
exitosamente y la lista de mandatos que no fue posible llevar a cabo.
 Debe ser posible conocer la cantidad de Rovers creados por los ingenieros de la NASA. Cada Rover
debe tener un nombre de "pila" que se asigna al momento de su creación. e.g "Curiosity"

Crear un diagrama de clase con detalles de implementación, los diagramas de actividad de los métodos
principales y la programación de la Clase Rover.

También podría gustarte