Skip to content
Consigna para ejercicio de colecciones - Mensajeros de pelicula
Wollok
Branch: master
Clone or download
Pull request Compare This branch is 1 commit ahead, 2 commits behind wollok:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.settings
META-INF commit inicial Apr 25, 2019
src Código inicial Sep 5, 2019
.classpath commit inicial Apr 25, 2019
.gitignore
.project commit inicial Apr 25, 2019
build.properties
matrix.jpeg
readme.md

readme.md

Mensajeros de película

Ejercicio incremental: Polimorfismo - Colecciones - Colecciones con bloques

Primera parte: Destinos y mensajeros

Desarrollar y probar un programa que me permita saber si el paquete puede ser entregado por un mensajero. Un paquete puede entregarse cuando el mensajero puede llegar al destino indicado y además el paquete está pago.

Destinos posibles:

  • Puente de Brooklyn: deja pasar a todo lo que pese hasta una tonelada.
  • La Matrix: deja entrar a quien pueda hacer una llamada.

Mensajeros posibles:

  • Roberto: Roberto viaja en bicicleta o camión. Si viaja en bicicleta, el peso que cuenta es el suyo propio más 1, que es lo que pesa la bici. Si viaja en camión, el peso es el propio más del del camión, a razón de media tonelada por cada acoplado. Roberto no tiene un mango, gracias que tiene cubiertas, y no puede llamar a nadie.
  • Chuck Norris: Chuck norris pesa 900 kg y puede llamar a cualquier persona del universo con sólo llevarse el pulgar al oído y el meñique a la boca
  • Neo vuela, así que no pesa nada. Y anda con celular, el muy canchero. El tema es que a veces no tiene crédito para hacer llamadas.

Tests

Realizar una serie de tests, donde se prueben las diferentes situaciones, entre ellas:

  • Que roberto (90kg) puede llevar un paquete que está pago en un camión que tiene un acoplado.
  • Que neo con crédito no puede llevar un paquete que no está pago a la matrix.

Segunda parte: Empresa de mensajería

Ahora aparece una empresa de mensajería. Esta tiene un conjunto de mensajeros, los cuales podrían ser Roberto, Chuck y Neo.

Se necesita poder hacer:

  • Contratar a un mensajero
  • Despedir a un mensajero
  • Despedir a todos los mensajeros
  • Analizar si la mensajeria es grande (si tiene mas de dos mensajeros)
  • Consultar si el paquete puede ser entregado por el primer empleado de la la empresa de mensajería.
  • Saber el peso del último mensajero de la empresa.
  • Hacer algunos test significativos.

Tercera parte: Mensajería recargada

Nuevos requerimientos para la mensajería. Surgen otros paquetes que la empresa necesita enviar:

  • Paquetito: es gratis, o sea, simpre está pago. Ademas, cualquier mensajero lo puede llevar.
  • Paqueton viajero: tiene múltiples destinos. Su precio es 100$ por cada destino. Se puede ir pagando parcialmente y se debe pagar totalmente para poder ser enviado. Además, el mensajero debe poder pasar por todos los destinos.
  • Se sabe que el paquete original tiene un precio determinado en $50.

Se necesita realizar:

  • Averiguar si un paquete puede ser entregado por la empresa de mensajería, es decir, si al menos uno de sus mensajeros puede entregar el paquete.
  • Obtener todos los mensajeros que pueden llevar un paquete dado.
  • Saber si una mensajería tiene sobrepeso. Esto sucede si el promedio del peso de los mensajeros es superior a 500 Kg.
  • Hacer que la empresa de mensajería envíe un paquete. Para ello elige cualquier mensajero entre los que pueden enviarlo y si no puede lo agrega a los paquetes pendientes.
  • Dado un conjunto de paquetes, enviarlos a todos, de igual manera.
  • Encontrar el paquete pendiente más caro y enviarlo, actualizando los pendientes en caso de haberlo podido enviar.

Cada punto debe tener mínimo un test

Agregar un nuevo mensajero y un nuevo paquete y garantizar que todo siga funcionando

You can’t perform that action at this time.