P.4 Gestión de gastos

 #definimos la función

def nova_persona(d,nom):
  d[nom]=[0,0]

despenses={}
nova_persona(despenses,'Josep')
nova_persona(despenses,'Joana')
print(despenses)

def reset(d):
  for clau in d:
    d[clau]=[0,0]

despenses={'Josep': [234, 10], 'Joana': [3, 10]}
print("Before reset :",despenses)
reset(despenses)
print("After  reset :",despenses)

def activitat(d,participants,qui_paga,quant):
  for user in participants:
    d[user][1]+=quant/len(participants)
  d[qui_paga][0]+=quant

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)

def despeses_totals(d):
  despeses=0
  deutes=0
  for value in d.values():
    despeses+=value[0]
    deutes+=value[1]
  if (despeses-deutes)>.001:                        #Mai feu servir != o == per floats
    print("Compte! els comptes no són consistents")
    return -1
  else:
    return despeses

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))

def llista_quant_pagat(d):
  llista=[]
  for user, value in d.items():
    llista.append([user,value[0]])
  return llista

despeses={'Pep': [0, 25.0], 'Joana': [20.0, 10.0], 'Lluisa': [50.0, 35.0]}
print(llista_quant_pagat(despeses))

def qui_deu_mes(d):
  maxim=["ningú",0]
  for user, value in d.items():
    deute=value[1]-value[0]
    if deute>maxim[1]:
      maxim[0]=user
      maxim[1]=deute
  return maxim

despeses={'Pep': [0, 25.0], 'Joana': [20.0, 10.0], 'Lluisa': [50.0, 35.0]}
print(qui_deu_mes(despeses))

Comentarios

Entradas populares de este blog