Simularea plăților periodice (II)
Ai decis să extinzi programul din exercițiul anterior pentru a stoca plățile de principal și dobândă efectuate în fiecare perioadă și pentru a reprezenta grafic rezultatele, în loc să le afișezi pur și simplu.
În acest exemplu, codul pentru grafic este deja scris, așa că trebuie doar să completezi logica din interiorul buclei for și inițializarea variabilelor care vor fi actualizate la fiecare iterație.
Acest exercițiu face parte din cursul
Introducere în concepte financiare în Python
Instrucțiuni pentru exercițiu
- Stochează
interest_paidșiprincipal_paidpentru fiecare perioadă de timp. - Calculează
principal_remainingpentru fiecare perioadă de timp, pe baza ratei de principal și a principalului rămas. - Rulează codul furnizat pentru a reprezenta grafic plățile lunare de dobândă față de principal.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Loop through each mortgage payment period
for i in range(0, mortgage_payment_periods):
# Handle the case for the first iteration
if i == 0:
previous_principal_remaining = mortgage_loan
else:
previous_principal_remaining = principal_remaining[i-1]
# Calculate the interest based on the previous principal
interest_payment = round(previous_principal_remaining*mortgage_rate_periodic, 2)
principal_payment = round(periodic_mortgage_payment - interest_payment, 2)
# Catch the case where all principal is paid off in the final period
if previous_principal_remaining - principal_payment < 0:
principal_payment = previous_principal_remaining
# Collect the historical values
interest_paid[i] = ____
principal_paid[i] = ____
principal_remaining[i] = ____
# Plot the interest vs principal
plt.plot(interest_paid, color="red")
plt.plot(principal_paid, color="blue")
plt.legend(handles=[interest_plot, principal_plot], loc=2)
plt.show()