Recapitulando

En un mundo de objetos, todo lo que tenemos son objetos y mensajes. A estos últimos, podemos distinguirlos según la forma en que se escriben:

Mensajes de palabra clave. Su nombre está compuesto por una o varias palabras, puede terminar con un signo de exclamación ! o de pregunta ?, y se envía mediante un punto. Además,

  • pueden no tomar argumentos, como Rayuela.anio_de_edicion;
  • o pueden tomar uno o más argumentos, separados por coma: SanMartin.cruzar!(LosAndes, Mula).

Operadores. Son todos aquellos cuyo "nombre" se compone de uno o más símbolos, y se envían simplemente escribiendo dichos símbolos. En cuanto a los argumentos,

  • pueden no tomar ninguno, como la negación !true;
  • o pueden tomar uno (y solo uno), como Orson == Garfield o energia + 80.

Como vimos, también se pueden escribir como mensajes de palabra clave (aunque no parece buena idea escribir 1.==(2) en vez de 1 == 2 ).

Vamos a enviar algunos mensajes para terminar de cerrar la idea. Te toca escribir un programa que haga que Pepita:

  1. Coma 90 gramos de alpiste.
  2. Vuele a Iruya.
  3. Finalmente, coma tanto alpiste como el 10% de la energía que le haya quedado.

Este programa tiene que andar sin importar con cuanta energía arranque Pepita.

¡Dame una pista!

Cualquier envío de mensajes que devuelva algo es una expresión válida, y puede ser usada en cualquier lugar en que se espera un objeto. Por ejemplo, las siguientes colaboraciones son válidas:

 Fitito.cargar_nafta!(120 * 4)
 Fitito.cargar_nafta!(Fitito.capacidad_tanque_nafta - Fitito.nafta_disponible) #Carga al Fitito lo necesario para completar su tanque. Para ello le pregunta al Fitito su capacidad y la nafta que tiene en este momento. 

Tenés que iniciar sesión antes de empezar a enviar tus soluciones