Practica 2

Páginas: 8 (1832 palabras) Publicado: 19 de septiembre de 2015
 

 

Orientación a Objetos 1 ­ 2015 
Práctica 2 

 

Introducción: 
En esta práctica deberá utilizar el ambiente del robot en una versión más avanzada, para ello copie, 
pegue en el Playground y ejecute el siguiente código: 
BGSArenaWindow expertViewOn: (OnTheFlyConfigurableSimulation batteryWalkingBrush). 

 
Ejercicio 1 
El   mundo  de  robots  de  esta  práctica  ya  no  tiene  un  robot al  comenzar.  El  mismo   debe  agregarse 
explícitamente  por   medio  del  botón  etiquetado  “Agregar  Robot”.  Al  agregar  un  robot  debe  indicar   el 
nombre  con  el  que se  lo referenciará  (en este  caso sugerimos utilizar la  variable ​
robotech​
). También 
es posible agregar un  robot haciendo  click en  cualquier  posición de  la  arena;  en este  caso el robot  se 
ubicará en  la posición clickeada. Extienda el comportamiento del robot para que sea capaz de entender 
los siguientes  mensajes. Compruebe que el robot ​
robotech reacciona  correctamente. Recuerde incluir  
el comentario del método en la definición de cada uno. 

0) #position:aPoint 
“Posiciona al robot en la celda aPoint de la arena. Ayuda: ver def de 
#position” 
1) #squareOfSize: aSize “Realiza un cuadrado con una esquina en su posición actual y de lado aSize.” 
2) #squareOfSize: aSize at: aPoint 
“Realiza un cuadrado con una esquina en el punto aPoint y de lado aSize.” 
3) #squareAtHomeOfSize: aSize 
“Realiza un cuadrado con una esquina en 25@25 y de lado aSize.” 
4) #rotatedSquareOfSize: aSize 
“Realiza un cuadrado con una esquina en su posición actual, de lado aSize, 
rotado 45 grados.” 5) #rotatedSquareOfSize: aSize at:aPoint 
“Realiza un cuadrado con una esquina en aPoint, de lado aSize, rotado 45 
grados.” 
Nota: implemente los métodos re­utilizando los métodos previamente definidos. 
 

Ejercicio 2 
Agregue  otro   robot  al  que  conocerá  por  medio  de  la  variable afrodita​
.  Compruebe  que  la   robot 
afrodita  entiende  los  mensajes  definidos   en  el  Ejercicio  1  y reacciona  de  igual  forma  que  el  robot 
robotech​
.  ¿Qué   sucede  si  modifica  uno de  los  métodos?  ¿Siguen  comportándose  ambos  robots  de 
igual manera? ¿Por qué? Discuta el por qué con un ayudante. 

 

Orientación a Objetos 1 ­ 2015 
https://sites.google.com/site/objetos12015/home 

 

 

 

Orientación a Objetos 1 ­ 2015 
Práctica 2 

 

Ejercicio 3: PatrolCouple Una PatrolCouple (pareja de guardia) está formada por dos robots: uno conocido como ​
patrol ​
(patrulla) 
y el otro conocido como ​
sniper ​
(francotirador).  
1.

2.

3.

Defina la clase PatrolCouple y cree una instancia en el Playground. PatrolCouple debe 
implementar el mensaje ​
#patrol: sniper:​
 que toma dos robots como parámetros y los guarda en 
las variables de instancia que correspondan. Cree dos robos diferentes para que sean  ​
patrol ​
y ​
sniper r​
espectivamente. Cree una instancia 
de PatrolCouple. Por último, envíe el mensaje ​
#patrol: sniper:​
 con los robots como parámetros 
de instancia de PatrolCouple. 
Según lo visto en la teoría, implemente el o los métodos necesarios para que se puedan 
inicializar las instancias de PatrolCouple con los robots que lo conforman por medio de un método de clase que se encargue de la “creación e inicialización”.  

 

Ejercicio 4: PatrolCouple con comportamiento 
En este ejercicio agregaremos comportamiento a​
 PatrolCouple​
 con la siguiente definición de 
mensajes: 

#reset 
"Ambos robots se posicionan enfrentados a distancia 5 uno del otro (uno mira 
al south y el otro al north, uno de ellos posicionado en 20@20" 
#regularPatrol "patrol hace un cuadrado de lado 10 rotado 45 grados alrededor de sniper, 
sniper en el centro gira en sentido de las agujas del reloj." 
#regularPatrolTrace 
"Similar a regularPatrol pero patrol realiza un trazo con el brush" 
#doTheRegularPatrol 
"Los guardias repiten regularPatrol 5 veces, pero luego de cada una se corren 
5 hacia el este. Considere usar bateria con suficiente carga" ...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Practica 2
  • practica 2
  • practica 2
  • Practica 2
  • practica 2
  • Practica 2
  • Practica 2
  • Practica 2

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS