Candidats ========== .. py:module:: candidats Un diccionari de vots representa els vots rebuts pels candidats a l'ajuntament d'un municipi. La clau del diccionari és un string que conté el nom i cognoms del candidat i el valor és el nombre de vots. Per exemple: .. code:: python {'Joan Pere Jorbina Palau':570, 'Niceto Brunildo Fornells':679, 'Mariona Puig Peix': 701, 'Adriana de Tor Quemada': 451} Un diccionari d’ingressos representa els ingressos anuals de les persones del municipi. La clau del diccionari és un string que conté el nom i cognoms de la persona i el valor són seus ingressos anuals expressats en euros. Per exemple: .. code:: python {'Mariona Puig Peix':15456, 'Arnau Osorio Lucas':27654, 'Arnau Brigat Pelfred': 18654, 'Niceto Brunildo Fornells':14567} Es demana que dissenyis les següents funcions en Python i les desis al fitxer :file:`candidats.py`: .. py:function:: vots_minim (dic, minim) Donats un diccionari de vots *dic* com el descrit i un nombre enter *minim*, retorna *True* si hi ha algun candidat que no hagi assolit un nombre de vots superior a *minim* donat i *False* en cas contrari. Per exemple, .. literalinclude:: test_vots_minim.txt :language: python :lines: 3-9 .. note:: Podeu descarregar el fitxer amb tests :download:`test_vots_minim.txt`. .. py:function:: can_mes_votat(dic) Donat un diccionari de vots com el descrit, retorna el nom i cognoms del candidat mes votat. Si el diccionari és buit, retorna l'string buit. Per exemple, .. literalinclude:: test_can_mes_votat.txt :language: python :lines: 3-7 .. note:: Podeu descarregar el fitxer amb tests :download:`test_can_mes_votat.txt`. .. py:function:: vots_ingressos(dvots, ding) Donats un diccionari de vots *dvots* i un dicionari d'ingressos *ding*, retorna la llista dels candidats del qui es desconeix els ingressos, és a dir, els que són al diccionari de vots però no al d'ingressos. La llista retornada ha d'estar ordenada alfabèticament: .. literalinclude:: test_vots_ingressos.txt :language: python :lines: 3-9 .. note:: Podeu descarregar el fitxer amb tests :download:`test_vots_ingressos.txt`. .. py:function:: rics(dvots, ding) Donats un diccionari de vots *dvots* i un d'ingressos *ding*, retorna una llista amb els noms de les 10 persones més riques del municipi. A més a més, per cadascuna d'aquestes persones que sigui un candidat, al costat del nom hi ha d'haver un asterisc ('*'). La llista ha d'estar ordenada de més a menys ingressos. Suposeu que al municipi hi ha almenys 10 persones. Per exemple, .. literalinclude:: test_rics.txt :language: python :lines: 3-25 .. note:: Podeu descarregar el fitxer amb tests :download:`test_rics.txt`. .. rubric:: Solució Disposeu d'una solució al fitxer :download:`candidats.py `.