Introducción a la Programación Orientada a Objetos PRACTICO N ...
Introducción a la Programación Orientada a Objetos PRACTICO N ...
Introducción a la Programación Orientada a Objetos PRACTICO N ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Introducción</strong> a <strong>la</strong> <strong>Programación</strong> <strong>Orientada</strong> a <strong>Objetos</strong><br />
DCIC ‐ UNS<br />
2012<br />
incrementarPG(jugoElCap: boolean) , incrementarPE(jugoElCap: boolean),<br />
incrementarPP(jugoElCap: boolean) Aumentan en 1 los partidos del equipo y si corresponde<br />
envía un mensaje al capitán para que incremente en 1 sus partidos.<br />
incrementarGFavor(total, delCap: entero): Aumenta los goles del equipo y si corresponde<br />
envía un mensaje al capitán para actualizar sus goles.<br />
b) Considerando el mismo modelo para jugador implemente una nueva c<strong>la</strong>se Equipo para <strong>la</strong><br />
siguiente especificación:<br />
Equipo<br />
<br />
nombre: String<br />
capitan: Jugador<br />
pG,pE,pP: entero<br />
gFavor, gContra: entero<br />
<br />
Equipo(nom:String, cap: Jugador)<br />
<br />
incrementarPG()<br />
incrementarPE()<br />
incrementarPP()<br />
aumentarGfavor(total: entero)<br />
aumentarGContra(total: entero)<br />
<br />
partidos(): entero<br />
puntos(): entero<br />
mejorPuntaje(e: Equipos): Equipo<br />
capitanConMasGoles(e: Equipo): Jugador<br />
incrementarPG() incrementarPE() incrementarPP(): Aumenta en 1 el puntaje correspondiente.<br />
incrementarGFavor(total: entero): Aumenta los goles del equipo.<br />
c) Defina una c<strong>la</strong>se adecuada para testear cada alternativa.<br />
Es responsabilidad de <strong>la</strong><br />
c<strong>la</strong>se Cliente incrementar<br />
el número de partidos del<br />
capitán del equipo.<br />
Es responsabilidad de <strong>la</strong><br />
c<strong>la</strong>se Cliente incrementar<br />
el número de goles<br />
convertidos por el capitán<br />
del equipo.<br />
EJERCICIO 4.<br />
Se conoce como Langostas Mutantes a una variedad de <strong>la</strong>s <strong>la</strong>ngostas que viven cerca de <strong>la</strong>s centrales<br />
nucleares. Este tipo de <strong>la</strong>ngosta tiene dos características que <strong>la</strong> diferencia del resto de <strong>la</strong> especie: Por<br />
un <strong>la</strong>do, como todo animal que vive cerca de centrales nucleares, tiene tres ojos; y además su ciclo de<br />
reproducción es realmente extraño. La reproducción de <strong>la</strong> Langosta Mutante se puede describir de <strong>la</strong><br />
siguiente manera:<br />
Reproducción: La hembra <strong>la</strong>ngosta tiene una cría. Sí <strong>la</strong> cría es hembra entonces <strong>la</strong> <strong>la</strong>ngosta madre<br />
finaliza su ciclo de reproducción actual. Sí <strong>la</strong> cría es macho entonces <strong>la</strong> <strong>la</strong>ngosta automáticamente se<br />
reproducirá una vez más siguiendo el comportamiento explicado.<br />
a) Implemente <strong>la</strong> c<strong>la</strong>se ColoniaLangostasMutantes mode<strong>la</strong>da en el siguiente diagrama. Al crear <strong>la</strong><br />
colonia hay un solo macho y una so<strong>la</strong> hembra.<br />
El comando reproduccionEnLaColonia() simu<strong>la</strong> <strong>la</strong> reproducción de cada hembra en <strong>la</strong> colonia<br />
(recuerde que al reproducirse se cambia <strong>la</strong> cantidad de machos y hembras en <strong>la</strong> colonia)<br />
invocando al método recursivo reproduccion(). Tenga en cuenta que <strong>la</strong>s hembras recién nacidas<br />
necesitan cierto proceso de maduración antes de reproducirse, es por eso que no pueden reproducirse<br />
hasta <strong>la</strong> próxima invocación del método reproduccionEnLaColonia().