def dades_facturacio(linia):
    linia = linia.strip()
    ll = linia.split(':')
    nom,fact,cobrat = ll
    fact = int(fact)
    cobrat = int(cobrat)
    saldo_pendent = fact - cobrat
    if saldo_pendent < 0:
        saldo_pendent = 0
    return nom, saldo_pendent

def classifica_saldos(nomf,dlimits,fit_ok,fit_exces):
    with open(nomf,'r') as f, open(fit_ok,'w') as fok, open(fit_exces,'w') as fexc:
        for linia in f:
            nom, saldo = dades_facturacio(linia)
            limit = dlimits[nom]
            s = ':'.join([nom,str(saldo),str(limit)]) + '\n'
            if saldo <= limit:
                fok.write(s)
            else:
                fexc.write(s)
