tforwforw.py

Created by matthieumorvant

Created on February 06, 2024

2.1 KB


def calculer_ffe(montant_emprunt, delais_jusqu_au_debut, temps_du_contrat, tx_garanti, tx_a_echeance):
    # Montant après délai jusqu'au début, ajusté par le taux garanti
    montant_apres_delai = montant_emprunt / (1 + tx_garanti * delais_jusqu_au_debut / 12)
    detail_delai = "{} / (1 + {:.2%} * {:.2f} / 12) = {:.2f} €".format(montant_emprunt, tx_garanti, delais_jusqu_au_debut, montant_apres_delai)
    
    # Valeur acquise après le temps du contrat, ajustée par le taux à échéance
    valeur_acquise = montant_apres_delai * (1 + tx_a_echeance * (temps_du_contrat + delais_jusqu_au_debut) / 12)
    detail_valeur_acquise = "{:.2f} * (1 + {:.2%} * {:.2f} / 12) = {:.2f} €".format(montant_apres_delai, tx_a_echeance, temps_du_contrat + delais_jusqu_au_debut, valeur_acquise)
    
    # Calcul du taux proposé par la banque
    taux_propose = ((1 + tx_a_echeance * (temps_du_contrat + delais_jusqu_au_debut) / 12) / (1 + tx_garanti * delais_jusqu_au_debut / 12) - 1) * 12 / temps_du_contrat
    detail_taux_propose = "((1 + {:.2%} * {:.2f} / 12) / (1 + {:.2%} * {:.2f} / 12) - 1) * 12 / {:.2f} = {:.2%}".format(tx_a_echeance, temps_du_contrat + delais_jusqu_au_debut, tx_garanti, delais_jusqu_au_debut, temps_du_contrat, taux_propose)

    return detail_delai, detail_valeur_acquise, detail_taux_propose

# Entrée des données utilisateur
montant_emprunt = float(input("Montant emprunt (nat) : "))
delais_jusqu_au_debut = float(input("Délais jusqu'au début (en mois) : "))
temps_du_contrat = float(input("Temps du contrat (en mois) : "))
tx_garanti = float(input("Tx garanti (%) : ")) / 100
tx_a_echeance = float(input("Tx à échéance (%) : ")) / 100

# Exécution des calculs
detail_delai, detail_valeur_acquise, detail_taux_propose = calculer_ffe(montant_emprunt, delais_jusqu_au_debut, temps_du_contrat, tx_garanti, tx_a_echeance)

# Affichage des résultats
print("\nCorrigé:")
print("Montant après le délai jusqu'au début: " + detail_delai)
print("Valeur acquise après le temps du contrat: " + detail_valeur_acquise)
print("Le taux proposé par la banque doit être au moins de: " + detail_taux_propose)