Está en la página 1de 1

1
/ 3. Programación con Objetos / 5. Colecciones / 1. Entrando en Calor

Ejercicio 1: Entrando en Calor 



¡Vamos a crear una biblioteca de videojuegos! Para empezar, tendremos tres  Solución  Consola
videojuegos, de los cuales sabemos lo siguiente:
1 module CarlosDuty 
CarlosDuty : es violento. Su di cultad se calcula como 30 - @cantidad_logros * 2
3 @cantidad_logros=0 
0.5 . Y si se lo juega por más de 2 horas seguidas, se le suma un logro a su cantidad. 4 def self.cantidad_logros
Inicialmente, el juego no tiene logros. 5 @cantidad_logros 
6 end
TimbaElLeon : no es violento. Su di cultad inicial es 25 y crece un punto por cada
7 def self.violento?
hora que se juegue. 8 true
Metroide : es violento sólo si @nivel_espacial es mayor a 5. Este nivel arranca en 9 end
10
3 pero se incrementa en 1 cada vez que se lo juega, sin importar por cuánto
11 def self.dificultad
tiempo. Además, su di cultad siempre es 100. 12 30-@cantidad_logros * 0.5
13 end
14 def self.jugar!(un_tiempo)
De ní estos tres objetos de forma que entiendan los mensajes dificultad , violento? 15 if un_tiempo>2
y jugar!(un_tiempo) . 16 @cantidad_logros+=1
17 end
 ¡Dame una pista! 18 end
19 end
20
21
22 module TimbaElLeon
23 @dificultad=25
24 def self.dificultad
25 @dificultad
26 end
27 def self.violento?
28 false
29 end
30 def self.jugar!(un_tiempo)
31 if(un_tiempo>=20)
32 @dificultad+=20
33 end
34 end
35 end
36
37
38
39
40 module Metroide
41 @nivel_espacial=3
42 def self.dificultad
43 100
44 end
45 def self.nivel_espacial
46 @nivel_espacial
47 end
48 def self.jugar!(un_tiempo)
49 @nivel_espacial+= 1
50 end
51 def self.violento?
52 @nivel_espacial>5
53 end
54 end
55
56

 Enviar

 ¡Muy bien! Tu solución pasó todas las pruebas

¡Ya tenemos creados los objetos para nuestra colección de videojuegos!

Es importante que notes que todos estos objetos responden a los mismos mensajes: dificultad , violento? y jugar!(un_tiempo) . Como aprendiste con las golondrinas,
nuestros videojuegos son polimór cos para ese conjunto de mensajes.

¡Esto signi ca que podemos enviarles los mismos mensajes a cualquiera de los videojuegos y usarlos indistintamente!

Siguiente Lección: Clases e Instancias 

Esta guía fue desarrollada por Felipe Calvo, Franco Bulgarelli, Mariana Matos, Gustavo Crespi bajo los términos de la Licencia Creative Commons Compartir-Igual, 4.0.

Información importante
© 2015-2022 Ikumi SRL Términos y Condiciones 
Reglas del Espacio de Consultas

También podría gustarte