3. Diferències¶
Definim una llista de diferències per parells d’una llista com la llista formada per les diferències entre cada parell d’elements consecutius agafats de dos en dos. Per exemple, per
[a, b, c, d]seria[b−a, d−c].Dissenya la següent funció i desa-la al fitxer
diferencies.py:- diferencies(ln, linf, lsup)¶
Retorna la llista de diferències de la llista ln. Si algun dels nombres de la parella no està dins l’interval tancat delimitat per linf i lsup, la diferència serà zero.
Els següents doctests mostren exemples del que ha de fer la funció:
>>> ln1 = [1, 3, 5, 8] >>> diferencies(ln1, 0, 10) [2, 3] >>> ln2 = [-1, 2, 7, 20, 3, 4] >>> diferencies(ln2, 0, 10) [0, 0, 1] >>> ln3 = [] >>> diferencies(ln3, 0, 10) []
Disposes de més tests al fitxer
test-diferencies.txtEn un sistema de control industrial, un sensor pren lectures de dues en dues, amb valors consecutius que representen dues mesures d’un mateix paràmetre físic i que s’emmagatzemen en una llista de mesures.
Dissenya la següent funció i desa-la al fitxer
diferencies.py:- classifica_difs(lmes,linf,lsup):
Retorna el nombre de diferències positives o zero, i el nombre de diferències negatives de la llista lmes per les parelles dins de l’interval tancat delimitat per linf i lsup.
Els següents doctests mostren exemples del que ha de fer la funció:
>>> lm1 = [1, 3, 5, 8] >>> classifica_difs(lm1, 0, 10) (2, 0) >>> lm2 = [0, 10, 10, 0, 5, 5] >>> classifica_difs(lm2, 0, 10) (2, 1) >>> lm3 = [] >>> classifica_difs(lm3, 0, 10) (0, 0)
Disposes de més tests al fitxer
test-classifica-difs.txtDisposes de solucions al fitxer
diferencies.py