2. Previsió de la producció

Dissenya les funcions següents i desa-les al mòdul produccions (fitxer produccions.py).

produccions.previsio_unitats(estoc, vendes, nivell_baix, nivell_optim)

Retorna el nombre d’unitats d’un producte que cal produir (int).

Per tal de calcular el nombre d’unitats que cal produir cal tenir en compte l’estoc actual (estoc), les vendes previstes (vendes) i els nivells baix (nivell_baix) i òptim (nivell_optim) de productes en estoc. El nivell de producte previst és la diferència entre estoc i vendes. El nombre d’unitats que cal produir es calcula com segueix:

  • Si el nivell és més petit o igual que nivell_baix, és la diferència entre nivell_baix i nivell.

  • Si el nivell és més gran que nivell_baix i més petit que nivell_optim, és la diferència entre nivell_optim i nivell.

  • Si el nivell és més gran que nivell_optim, no cal produir res.

Per exemple:


>>> u = previsio_unitats(100, 80, 30, 70)
>>> u
10
>>> u = previsio_unitats(100, 45, 30, 70)
>>> u
15
>>> u = previsio_unitats(100, 20, 30, 70)
>>> u
0

Trobaràs més tests al fitxer test-previsio_unitats.txt


produccions.quants_lots(unitats, unitats_lot)

Retorna el nombre de lots d’un producte que cal produir (int).

unitats és el nombre mínim d’unitats d’un producte que cal produir i unitats_lot és el nombre d’unitats que conté un lot del producte. La producció és fa per lots en comptes de per unitats.

El nombre de lots és el mínim nombre natural \(n\), tal que \(\text{unitats} \le n · \text{unitats_lot}\).

Per exemple:


>>> ql = quants_lots(20, 10)
>>> ql
2

>>> ql = quants_lots(25, 10)
>>> ql
3

Trobaràs més tests al fitxer test-quants_lots.txt


produccions.previsio_lots(estoc, vendes, nivell_baix, nivell_optim, unitats_lot)

Retorna el nombre de lots d’un producte que cal produir (int)

Per tal de calcular el nombre de lots cal saber el nombre mínim d’unitats que cal produir. El nombre mínim d’unitats el calcula la funció previsio_unitats() a partir de l’estoc actual (estoc), les vendes previstes (vendes) i els nivells baix (nivell_baix) i òptim (nivell_optim) d’unitats del producte.

El nombre de lots el calcula la funció quants_lots() a partir del nombre mínim d’unitats i del nombre d’unitats per lot (unitats_lot).

Per exemple:


>>> u = previsio_lots(100, 80, 30, 70, 5)
>>> u
2
>>> u = previsio_lots(100, 45, 30, 70, 6)
>>> u
3
>>> u = previsio_lots(100, 20, 30, 70, 10)
>>> u
0

Trobaràs més tests al fitxer test-previsio_lots.txt