1. Collita¶
Una empresa hortofructícola vol conèixer com afecten les pedregades a la producció de préssecs dels seus camps. L’empresa recull dades d’un camp en una llista que representa els kilograms recollits al llarg de diversos dies. Un element d’aquesta llista pot ser:
una tupla de dos elements (dos
int): els kilograms de préssecs de qualitat extra, i els de segona categoria recollits aquell dia, o bél’string “pedra” que indica que aquell dia hi ha hagut una pedregada.
Per exemple:
[ (340, 130), (210, 230), (190, 140), 'pedra', (120, 190), (130, 210) ]
On es pot comprovar que s’han recollit \(340+210+190 = 740\) kilograms de préssecs de qualitat extra els \(3\) dies abans de l’única pedregada registrada, i \(120+130 = 250\) kilograms els \(2\) dies després.
L’empresa vol estudiar l’afectació de la pedra només en la producció de préssecs de qualitat extra, i quan en el camp s’ha produït exactament una pedregada.
Dissenya la funció següent i desa-la al mòdul collita
(fitxer collita.py).
- collita.extra(lRec)¶
lRec és una llista de dades de recol·lecció com la indicada anteriorment.
La funció retorna sempre una tupla de quatre
int:si en la llista lRec no hi ha exactament una pedregada, la funció retorna la tupla (-1, -1, -1, -1)
si en lRec hi ha exactament una pedregada, retorna una tupla formada per:
la suma de kilograms recollits ABANS de la pedregada
el nombre de dies ABANS de la pedregada
la suma de kilograms recollits DESPRÉS de la pedregada
el nombre de dies DESPRÉS de la pedregada
Per exemple:
>>> lCamp1 = [ (340, 130), (210, 230), (190, 140), 'pedra', (120, 190), (130, 210) ] >>> r = extra(lCamp1) >>> r (740, 3, 250, 2) >>> lCamp2 = [ (340, 130), (210, 230), 'pedra', (100, 210), 'pedra', (50, 140) ] >>> r = extra(lCamp2) >>> r (-1, -1, -1, -1) >>> lCamp3 = [ (120, 190), (130, 210), 'pedra', (340, 130), (210, 230), (190, 140) ] >>> r = extra(lCamp3) >>> r (250, 2, 740, 3)
Disposes de tests al fitxer test-collita.txt.