Class Robot
- All Implemented Interfaces:
Serializable
Mundo
relativamente vacio
(donde no existen autos ni casas) con el unico objeto de hacer tareas simples, pero interesantes.
Un Robot siempre se encuentra en una esquina mirando hacia una direccion (NORTE, SUR, ESTE u OESTE). El Robot es un Robot mobil, capaz de transladarse de una esquina a otra, pero tiene que tener cuidado, ya que puede chocar con una pared. Para evitar collisionar con las paredes, el Robot tiene un visor de corta distancia que le deja ver si en frente hay una pared o no.
El Robot tiene brazos y una bolsita de conos, lo que le deja poner conos en el mundo, y recoger conos y ponerlos en la bolsita. Pero nuevamente hay que tener cuidado, ya que el robot tiene una cantidad limitada de conos, y su bolsita tambien tiene espacio limitado.
Vos, como el dueño, tienes la responsabilidad de guiar a los Robot, usando sus sensores y acciones adecuadamente, para que realizen las tareas necesarias de forma correcta.
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCrea un Robot en la esquina superior-izquierda del Mundo, mirando al sur, con 10 conos (de cantidad y capacidad).Crea un Robot en un Mundo, con la posicion, direccion, cantidad y capacidad de conos especificadas. -
Method Summary
Modifier and TypeMethodDescriptionvoid
avanzar()
Hace que el Robot avance al frente, hasta la siguiente esquina.int
Devuelve la cantidad de conos que el Robot tiene actualmente.int
Devuelve la cantidad de conos que entran dentro de la bolsita de este Robot.int
Devuelve el numero de columna donde este Robot se encuentra.int
Devuelve la direccion actual que este Robot esta mirando.int
getFila()
Devuelve el numero de fila donde este Robot se encuentra.getMundo()
Devuelve el Mundo donde el Robot existe actualmente.void
Hace que este Robot gire 90° hacia la derecha.void
Hace que este Robot gire 90° hacia la izquierda.void
Hace que el Robot guarde un cono en la posicion actual.boolean
hayCono()
Controla si en la posicion actual del Robot hay por lo menos un cono.void
Hace que el Robot ponga un cono en su posicion actual.boolean
Controla si el Robot puede avanzar, es decir, si no hay ninguna pared en frente del Robot.
-
Field Details
-
NORTE
public static final int NORTE- See Also:
-
OESTE
public static final int OESTE- See Also:
-
SUR
public static final int SUR- See Also:
-
ESTE
public static final int ESTE- See Also:
-
-
Constructor Details
-
Robot
Crea un Robot en la esquina superior-izquierda del Mundo, mirando al sur, con 10 conos (de cantidad y capacidad).- Parameters:
m
- El mundo en donde crear el Robot.
-
Robot
Crea un Robot en un Mundo, con la posicion, direccion, cantidad y capacidad de conos especificadas.- Parameters:
m
- El mundo en donde crear el Robot.fila
- La fila inicial del Robot.columna
- La columna inicial del Robot.dirInicial
- La direccion inicial del Robot.cantidadMaxima
- La capacidad de la bolsita.cantConos
- La cantidad de conos inicial.
-
-
Method Details
-
girarIzquierda
public void girarIzquierda()Hace que este Robot gire 90° hacia la izquierda. -
girarDerecha
public void girarDerecha()Hace que este Robot gire 90° hacia la derecha. -
avanzar
public void avanzar()Hace que el Robot avance al frente, hasta la siguiente esquina. Si choca con alguna pared, el Robot lanza un error. -
ponerCono
public void ponerCono()Hace que el Robot ponga un cono en su posicion actual. Tira un error si al Robot no le quedan conos en la bolsita. -
guardarCono
public void guardarCono()Hace que el Robot guarde un cono en la posicion actual. Tira un error si no hay ningun cono o si la bolsita del Robot esta lleno. -
getFila
public int getFila()Devuelve el numero de fila donde este Robot se encuentra.- Returns:
- El numero de fila.
-
getColumna
public int getColumna()Devuelve el numero de columna donde este Robot se encuentra.- Returns:
- El numero de columna.
-
getDireccion
public int getDireccion()Devuelve la direccion actual que este Robot esta mirando.- Returns:
- la direccion actual del Robot.
-
hayCono
public boolean hayCono()Controla si en la posicion actual del Robot hay por lo menos un cono.- Returns:
- Si hay un cono o no en la posicion actual.
-
getCantidadConos
public int getCantidadConos()Devuelve la cantidad de conos que el Robot tiene actualmente.- Returns:
- La cantidad de conos que tiene el Robot.
-
getCapacidadConos
public int getCapacidadConos()Devuelve la cantidad de conos que entran dentro de la bolsita de este Robot.- Returns:
- La capacidad de la bolsita de este Robot.
-
puedeAvanzar
public boolean puedeAvanzar()Controla si el Robot puede avanzar, es decir, si no hay ninguna pared en frente del Robot.- Returns:
- Si el Robot puede avanzar.
-
getMundo
Devuelve el Mundo donde el Robot existe actualmente.- Returns:
- el Mundo donde el Robot esta.
-