S.4 Gestión de gastos
def nova_persona (d, nom) :
d[nom] = [0, 0]
return d
despeses = {}
nova_persona(despeses, 'Josep')
nova_persona(despeses, 'Joana')
print(despeses)
#EXERCICI2
def reset (d, nom):
d[nom] = [0, 0]
return d
despeses={'Josep': [234, 10], 'Joana':[3,10]}
reset(despeses, 'Josep')
reset(despeses, 'Joana')
print(despeses)
#EXERCICI 3
def activitat(d, participants, qui_paga, quant) :
#per saber el cost per persona:
cost_per_persona = quant/len(participants)
#afegim el cost per persona a la segona columna (1)
for persona in participants:
d[persona][1] += cost_per_persona
#sumem el preu de la activitat a la primera columna (0) de la persona que paga
d[qui_paga][0] += quant
#Exemple:
despeses= {}
#inicialitzem els participants
nova_persona(despeses,'Pep')
nova_persona(despeses,'Joana')
nova_persona(despeses,'Lluisa')
#El Pep i la Lluisa van a sopar i costa 50 euros, paga la Lluisa.
activitat(despeses,["Pep","Lluisa"],"Lluisa",50.0)
#La Joana i la Luisa van a veure una pel·lícula, paga la Joana
activitat(despeses,["Joana","Lluisa"],"Joana",20.0)
print(despeses)
#EXERCICI 4
#creem la funció despeses totals
def despeses_totals(d) :
total_despeses_pagades = sum(despeses[0] for despeses in d.values())
total_haver_pagat = sum(despeses[1] for despeses in d.values())
if total_despeses_pagades == total_haver_pagat:
return total_despeses_pagades
else:
print("Compte! Els comptes no són consistents")
return -1
#Exemple:
despeses={'Pep': [0, 25.0], 'Joana': [20.0, 10.0], 'Lluisa': [50.0, 35.0]}
print("despeses totals = ",despeses_totals(despeses))
despeses_error={'Pep': [0, 24.0], 'Joana': [20.0, 10.0], 'Lluisa': [50.0, 35.0]}
print("despeses totals = ",despeses_totals(despeses_error))
#Exercici 5.
def llista_quant_pagat(d):
llista_pagaments = [[persona, despeses[0]] for persona, despeses in d.items()]
return llista_pagaments
despeses={'Pep': [0, 25.0], 'Joana': [20.0, 10.0], 'Lluisa': [50.0, 35.0]}
print(llista_quant_pagat(despeses))
#EXERCICI 6
def qui_deu_mes(d) :
max_deute = 0
persona_deutora = None
for persona, despeses in d.items():
deute = despeses[1] - despeses[0]
if deute > max_deute:
max_deute = deute
persona_deutora = persona
return persona_deutora, max_deute
#Exemple:
despeses={'Pep': [0, 25.0], 'Joana': [20.0, 10.0], 'Lluisa': [50.0, 35.0]}
print(qui_deu_mes(despeses))
Comentarios
Publicar un comentario