Desafío: Proyecto Final de Gestión de Productos
¡Felicidades por llegar a este punto del curso! En este desafío final, se gestionarán productos perecederos en una tienda de comestibles, determinando descuentos según la fecha de caducidad y los niveles de inventario. El objetivo es minimizar el desperdicio y maximizar las ventas mediante una estrategia de descuentos adecuada.
¡Veamos qué tan bien puedes traducir reglas de negocio a código Python!
Escenario
Como gerente de una tienda de comestibles, eres responsable de implementar una estrategia de descuentos para productos perecederos basada en su fecha de caducidad y niveles de inventario.
La estrategia de descuentos es la siguiente:
Aplicar un 30% de descuento si el producto caduca en 3 días o menos y el inventario es mayor a
50
unidades;Aplicar un 20% de descuento si el producto caduca en 4 a 6 días y el inventario es mayor a
50
unidades;Aplicar un 10% de descuento si el producto caduca en 7 días o más, o si el inventario es de
50
unidades o menos;Sin descuento si el producto no es "Perishable".
Swipe to start coding
Implementar una serie de sentencias condicionales para determinar el descuento de un producto según su tipo, los días hasta su vencimiento y el nivel de inventario.
- Comenzar verificando si el
product_type
es"Perishable"
. - Dentro de esta sentencia
if
:- Aplicar un 30% de descuento si
days_until_expiration
es3
o menos ystock_level
es mayor que50
; - Utilizar
elif
para aplicar un 20% de descuento sidays_until_expiration
está entre4
y6
, ystock_level
es mayor que50
; - Utilizar otro
elif
para aplicar un 10% de descuento sidays_until_expiration
es mayor que6
ystock_level
es50
o menos.
- Aplicar un 30% de descuento si
- Si el
product_type
no es"Perishable"
, imprimir"No discount available for non-perishable items."
.
Requisitos de salida
- Si se aplica un 30% de descuento, imprimir:
"30% discount applied"
- Si se aplica un 20% de descuento, imprimir:
"20% discount applied"
- Si se aplica un 10% de descuento, imprimir:
"10% discount applied"
- Si el producto no es perecedero, imprimir:
"No discount available for non-perishable items."
Nota
Se pueden anidar múltiples sentencias
if
entre sí. Asegúrese de gestionar correctamente la indentación para cada bloque.
Solución
¡Gracias por tus comentarios!