Error en caso de prueba

Error en caso de prueba

de Joaquín Sande González -
Número de respuestas: 1

Buenas! Estaba chequeando los casos de prueba y encontré este: 


La entrada que está seleccionada con azul usa la promoción PM1, que es esta: 

 


y que contiene los siguientes productos: 




Para que la promo sea válida debe haber 1 producto de cada uno para poder aplicar el 30%. El usuario realiza la compra CO1, que es esta:




es decir, compra 2 veces el producto PR2, y luego una única vez los productos PR4 y PR8. Entonces, el monto final debería calcularse como (Precio_PR2 + Precio_PR4 + Precio_PR8) x 0,7 + Precio_PR2 , pues el descuento del 30% de aplica solamente a los productos que entran en la promo. Sin embargo, el cálculo que hay que hacer para llegar a 68389.293 es (2xPrecio_PR2 + Precio_PR4 + Precio_PR8) x 0,7, es decir, que se está aplicando la promoción sobre TODOS los productos, a pesar que uno de ellos en teoría no debería entrar. 

Tal vez yo comprendí mal cómo funcionan las promociones. ¿Funciona como planteé ahí o entendí mal?


Otra preguntita extra: Nuestros precios mostrados en pantalla con el tipo de dato Float muestran solamente 2 dígitos después de la coma, mientras que en los ejemplos dados se muestran 3 dígitos después de la coma. ¿Esto es importante? Las salidas coinciden exactamente sin ser ese último dígito que no se muestra (exceptuando una salida que no coincide, que es la planteada en este mensaje)

En respuesta a Joaquín Sande González

Re: Error en caso de prueba

de Antonio Mauttone -

Hola, en principio asumimos que si hay un descuento, entonces aplica a toda la compra. Con ese criterio se calculó el monto de la compra 1 de los datos de prueba.

Pueden existir otras interpretaciones (variantes similares) y son admitidas. Lo importante es que lo dejen claro en el momento de la defensa.

Saludos