Système bancaire simple en Python
Les exemples suivants servent à apprendre les opérations d’un système bancaire en Python :
Exemples
means = [0, 0, 0]
loan = 0
rate = 0
pay = 0
investment = 0
annual_rate = 0
# Calculer le rendement attendu d’un investissement régulier
# La formule de calcul du rendement d’un investissement régulier est : M=a(1+x)[-1+(1+x)^n]/x;
# Où M représente le rendement attendu, a représente le montant d'investissement régulier par période, x représente le taux de rendement, et n représente le nombre de périodes d'investissement.
# Supposons que l'utilisateur investisse 300 yuan par mois, soit 3600 yuan par an, avec un taux de rendement annuel de 15%,
# Avec une période d'investissement de 35 ans, le rendement peut être calculé comme 3600(1+15%)[-1+(1+15%)^35]/15%=3648044 yuan.
def fixed_investment(inv, a_rate, y):
global means
inv = 12 * inv
a_rate = a_rate / 100
if a_rate == 0:
expected = 0
else:
expected = inv * (1 + a_rate) * (pow((1 + a_rate), y) - 1) / a_rate
print("Revenu attendu de l'investissement régulier : %.2f" % expected)
means[1] = expected
return expected
def balance():
total = 0
for i in means:
total += i
print("Votre total d'actifs est : %.2f" % total)
print("Les détails de vos actifs sont :\n")
print("Dépôts : %.2f" % means[0])
print("Gestion de patrimoine : %.2f" % means[1])
print("Passifs : %.2f" % means[2])
def⟦⟧saving saving(amount):
global means
if amount < 0:
print("Le montant du dépôt ne peut pas être inférieur à 0 !")
else:
means[0] += amount
print("Déposé : %.2f yuan" % amount)
print("Solde actuel : %.2f yuan" % means[0])
def draw_money(drawing):
global means
if drawing < 0:
print("Le montant du retrait ne peut pas être inférieur à 0 !")
elif drawing > means[0]:
print("Le montant du retrait ne peut pas dépasser le solde !")
else:
means[0] -= drawing
print("Retiré : %.2f yuan" % drawing)
print("Solde actuel : %.2f yuan" % means[0])
def loans(loan, rate, pay, years):
global means
if pay < (loan - pay) * rate:
print("Vous ne rembourserez jamais !!!")
else:
if years == 0:
count = 0
while loan > 0:
loan -= pay
loan *= (1 + rate)
count += 1
print("Le prêt sera remboursé en %d ans." % count)
else:
for _ in range(years):
loan -= pay
if loan == 0:
break
else:
loan *= (1 + rate)
print("Vos passifs actuels sont : %.2f" % loan)
# means[2] = loan
return loan
# Situation financière future
def future(years):
income = fixed_investment(investment, annual_rate, years)
debt = loans(loan, rate, pay, years)
captial = signifie[0] + income - debt
print("Votre total d'actifs en année %i: %.3f" % (years, captial))
def init():
print()
print('''Les services disponibles sont les suivants:
1. Consulter les actifs
2. Dépôt
3. Retrait
4. Calculer les intérêts composés
5. Calculer le prêt
6. Calculer les actifs futurs
q. Quitter''')
def main():
init()
while True:
choice = input("Veuillez saisir le code de service que vous souhaitez utiliser : ")
# Consulter le solde
if choice == "1":
balance()
# Dépôt
elif choice == "2":
inc = float(input("Veuillez saisir le montant du dépôt : "))
saving(inc)
# Retrait
elif choice == "3":
dec = float(input("Veuillez saisir le montant du retrait : "))
draw_money(dec)
# Calculer l'investissement régulier
elif choice == "4":
investment = float(input("Veuillez saisir le montant de l'investissement régulier mensuel : "))
annual_rate = float(input("Veuillez saisir le taux de rendement annuel : "))
years = int(input("Veuillez saisir la période d'investissement (années) : "))
if investment <= 0 or annual_rate <= 0 or years <= 0:
print("Les données d'entrée sont incorrectes")
else:
money = fixed_investment(investment, annual_rate, years)
print("Gain final : %.2f yuan" % money)
# Calculer le prêt
elif choice == "5":
loan = float(input("Veuillez saisir le montant actuel du prêt : "))
rate = float(input("Veuillez saisir le taux d'intérêt annuel : "))
pay = float(input("Veuillez saisir le remboursement annuel : "))
if loan <= 0 or rate <= 0 or pay <= 0:
print("Les données d'entrée sont incorrectes")
else:
loans(loan, rate, pay, 0)
elif choice == "6":
years = int(input("Combien d'années plus tard souhaitez-vous vérifier la situation financière ? "))
future(years)
# Quitter
elif choice == "q":
print("Revenez la prochaine fois ! Au revoir !")
break
else:
print("La commande que vous avez saisie est incorrecte, veuillez réessayer\n")
if __name__ == '__main__':
main()
loan = 0
rate = 0
pay = 0
investment = 0
annual_rate = 0
# Calculer le rendement attendu d’un investissement régulier
# La formule de calcul du rendement d’un investissement régulier est : M=a(1+x)[-1+(1+x)^n]/x;
# Où M représente le rendement attendu, a représente le montant d'investissement régulier par période, x représente le taux de rendement, et n représente le nombre de périodes d'investissement.
# Supposons que l'utilisateur investisse 300 yuan par mois, soit 3600 yuan par an, avec un taux de rendement annuel de 15%,
# Avec une période d'investissement de 35 ans, le rendement peut être calculé comme 3600(1+15%)[-1+(1+15%)^35]/15%=3648044 yuan.
def fixed_investment(inv, a_rate, y):
global means
inv = 12 * inv
a_rate = a_rate / 100
if a_rate == 0:
expected = 0
else:
expected = inv * (1 + a_rate) * (pow((1 + a_rate), y) - 1) / a_rate
print("Revenu attendu de l'investissement régulier : %.2f" % expected)
means[1] = expected
return expected
def balance():
total = 0
for i in means:
total += i
print("Votre total d'actifs est : %.2f" % total)
print("Les détails de vos actifs sont :\n")
print("Dépôts : %.2f" % means[0])
print("Gestion de patrimoine : %.2f" % means[1])
print("Passifs : %.2f" % means[2])
def⟦⟧saving saving(amount):
global means
if amount < 0:
print("Le montant du dépôt ne peut pas être inférieur à 0 !")
else:
means[0] += amount
print("Déposé : %.2f yuan" % amount)
print("Solde actuel : %.2f yuan" % means[0])
def draw_money(drawing):
global means
if drawing < 0:
print("Le montant du retrait ne peut pas être inférieur à 0 !")
elif drawing > means[0]:
print("Le montant du retrait ne peut pas dépasser le solde !")
else:
means[0] -= drawing
print("Retiré : %.2f yuan" % drawing)
print("Solde actuel : %.2f yuan" % means[0])
def loans(loan, rate, pay, years):
global means
if pay < (loan - pay) * rate:
print("Vous ne rembourserez jamais !!!")
else:
if years == 0:
count = 0
while loan > 0:
loan -= pay
loan *= (1 + rate)
count += 1
print("Le prêt sera remboursé en %d ans." % count)
else:
for _ in range(years):
loan -= pay
if loan == 0:
break
else:
loan *= (1 + rate)
print("Vos passifs actuels sont : %.2f" % loan)
# means[2] = loan
return loan
# Situation financière future
def future(years):
income = fixed_investment(investment, annual_rate, years)
debt = loans(loan, rate, pay, years)
captial = signifie[0] + income - debt
print("Votre total d'actifs en année %i: %.3f" % (years, captial))
def init():
print()
print('''Les services disponibles sont les suivants:
1. Consulter les actifs
2. Dépôt
3. Retrait
4. Calculer les intérêts composés
5. Calculer le prêt
6. Calculer les actifs futurs
q. Quitter''')
def main():
init()
while True:
choice = input("Veuillez saisir le code de service que vous souhaitez utiliser : ")
# Consulter le solde
if choice == "1":
balance()
# Dépôt
elif choice == "2":
inc = float(input("Veuillez saisir le montant du dépôt : "))
saving(inc)
# Retrait
elif choice == "3":
dec = float(input("Veuillez saisir le montant du retrait : "))
draw_money(dec)
# Calculer l'investissement régulier
elif choice == "4":
investment = float(input("Veuillez saisir le montant de l'investissement régulier mensuel : "))
annual_rate = float(input("Veuillez saisir le taux de rendement annuel : "))
years = int(input("Veuillez saisir la période d'investissement (années) : "))
if investment <= 0 or annual_rate <= 0 or years <= 0:
print("Les données d'entrée sont incorrectes")
else:
money = fixed_investment(investment, annual_rate, years)
print("Gain final : %.2f yuan" % money)
# Calculer le prêt
elif choice == "5":
loan = float(input("Veuillez saisir le montant actuel du prêt : "))
rate = float(input("Veuillez saisir le taux d'intérêt annuel : "))
pay = float(input("Veuillez saisir le remboursement annuel : "))
if loan <= 0 or rate <= 0 or pay <= 0:
print("Les données d'entrée sont incorrectes")
else:
loans(loan, rate, pay, 0)
elif choice == "6":
years = int(input("Combien d'années plus tard souhaitez-vous vérifier la situation financière ? "))
future(years)
# Quitter
elif choice == "q":
print("Revenez la prochaine fois ! Au revoir !")
break
else:
print("La commande que vous avez saisie est incorrecte, veuillez réessayer\n")
if __name__ == '__main__':
main()
Exemples Python3