4. Funció preu (1 punt)¶
Implementeu la funció següent i deseu-la al mòdul cobrament (fitxer cobrament.py):
- cobrament.preu(p, m, t)¶
Donat un pàrquing p, la matrícula d’un cotxe m i l’instant actual t (una instància de la classe
datetime.datetime), retorna el preu en euros que ha de pagar el cotxe de matrícula m en abandonar del pàrquing p. Podeu suposar que, efectivament, el cotxe és aparcat al pàrquing. El preu són 10 euros fixos més 50 cèntims per hora o fracció, és a dir que per exemple una estada de tres hores i un minut es cobra igual que quatre hores.
Per exemple,
>>> from parkings import Parking
>>> from datetime import datetime
>>> from cobrament import preu
>>> p = Parking(5)
>>> p.aparca(2, '9876-MKF', datetime(2025, 5, 11, hour=10, minute=0))
>>> p.aparca(0, '1234-ABC', datetime(2025, 5, 11, hour=10, minute=20))
>>> preu(p, '9876-MKF', datetime(2025, 5, 11, hour=11, minute=21)) # temps estada:1h21'
11.0
>>> preu(p, '1234-ABC', datetime(2025, 5, 11, hour=11, minute=20)) # temps estada: 1h
10.5
>>> preu(p, '9876-MKF', datetime(2025, 5, 12, hour=17, minute=30)) # temps estada: 31h30'
26.0
>>> preu(p, '1234-ABC', datetime(2025, 6, 4, hour=9, minute=0)) # temps estada: 23 dies, 22h 40min".
297.5
Disposeu de jocs de prova al fitxer tests-preu.txt