Ejercicios¶
Proyecto CountDownLatch
Seis alumnos de un instituto quieren comprarle un regalo a su profesor para el final de curso. Han elegido por mayoría absoluta, que uno de ellos será el que recoja el dinero. A este alumno se la ha denominado como hermano mayor, y recogerá el dinero hasta completarlo, luego irá a comprar el regalo.
El regalo a comprar tiene un costo de $10, y cada alumno deberá poner entre $2 y $5 y tardará entre 3 y 10 segundo en pagarlo.
Realiza una aplicación de Java haciendo uso de la clase CountDownLatch
y mostrando mensajes en cada instante.
Proyecto CyclicBarrier
Diez amigos deciden ir el fin de semana a realizar una ruta de ciclismo siguiendo las siguientes etapas:
- En primer lugar, salen de casan y van hacia la gasolinera. El amigo más cercano está a un segundo y el más lejano a 3.
- Una vez lleguen a la gasolinera, comienza la etapa, que dura entre 5 y 10 segundos. Cuando finalizan la etapa llegan a un bar para poder refrescarse.
- Una vez que se refrescan, deciden volver a la gasolinera (tardan el mismo tiempo).
- Por último, deciden volver a casa.
Ten en cuenta, que no todos los amigos ciclistas tardan el mismo tiempo en realizar las etapas, por lo que si hay alguno que se adelante debe esperar al resto. Crea una simulación mostrando mensajes de información en cada etapa haciendo uso de CyclicBarrier
.
Proyecto Phaser
Realiza el mismo ejercicio anterior, teniendo en cuenta lo siguiente:
- 10 amigos realizan todas las fases, esperando a que el resto las realice.
- Hay un amigo impaciente, que no esperará al resto de amigos.
- Hay un amigo, que llega tarde y que intentará ponerse a la altura de sus amigos, realizando las etapas sin necesidad de esperar si éstos ya lo han realizado,
- Por último, hay un amigo que llega cuando todos los demás están terminando las etapas
Crea una simulación, pero en está ocasión haciendo uso de Phaser
.