Hotel

Es disposa d’un diccionari que té per claus strings que representen habitacions d’un hotel i on cada valor és un boolea amb el valor True si l’habitació està lliure i False si està ocupada. Una habitació es representa amb un string format pel número del pis i el número de l’habitació separats per un guió. Per exemple: 4-07 és l’habitació número 7 de la planta 4 i 10-15 representa l’habitació número 15 de la planta 10. Tots dos números poden tenir un o dos dígits.

En un fitxer anomenat hotel.py, dissenyeu les següents funcions:

  1. Dissenyeu la funció ordena que donada una llista d’strings només amb dígits, modifica la llista de manera que quedi ordenada de forma ascendent segons el valor numèric de l’string. Per exemple:

    >>> l = ['11', '07', '15', '3']
    >>> ordena(l)
    >>> l
    ['3', '07', '11', '15']
    

    Nota

    Podeu descarregar el fitxer amb tests test-ordena.txt

  2. Dissenyeu la funció hotel(habitacions,pis) que donat un diccionari habitacions com el descrit i un número de planta pis de tipus int, retorna una llista amb les habitacions lliures que hi ha en aquesta planta, ordenada per número d’habitació creixent. Per exemple:

    >>> d = {'4-17':True, '3-07': False, '8-12': True, '4-2':True, '4-01':False}
    >>> hotel(d, 4)
    ['2', '17']
    >>> hotel(d, 3)
    []
    

    Nota

    Podeu descarregar el fitxer amb tests test-hotel.txt

Disposeu de solucions al fitxer hotel.py