Empresa¶
Una empresa vol calcular el temps en què els seus treballadors es connecten a la seva intranet en un determinat dia. Per això es disposa d’un fitxer on a cada línia hi ha el codi d’un treballador (8 caràcters), un caràcter indicant connexió o desconnexió (C o D) i el temps en què s’ha produït en hores i minuts (1 o 2 caràcters per cada un). Dins de cada línia, aquestes dades estan separades entre elles per espais en blanc. Vegeu el fitxer Media:empresa.txt com a exemple. Les connexions i desconnexions dins del fitxer estan ordenades pel temps. Cal suposar que les dades del fitxer són coherents, és a dir, que si hi ha enregistrada una connexió d’un treballador, hi haurà també enregistrada, més avall, la seva desconnexió.
Dissenyeu les funcions següents. Cal que el temps es representi com un tuple de 2 components enters: hores i minuts.
a) Una funció que a partir d’un string que representa una línia del fitxer, retorni el codi del treballador, el caràcter C/D i el temps representat amb el tuple.
b) Una funció que sumi dos temps i retorni el tuple corresponent i una funció anàloga que resti dos temps.
c) Una funció que, donat el nom d’un fitxer corresponent a un dia determinat i el codi d’un treballador, retorni un tuple amb el temps que aquest treballador ha estat connectat a la intranet. Useu les funcions dissenyades en els apartats anteriors