MulaiMulai sekarang secara gratis

Mensimulasikan pembayaran berkala (II)

Anda memutuskan untuk mengembangkan program dari latihan sebelumnya untuk menyimpan pembayaran pokok dan bunga yang dilakukan pada setiap periode, serta memvisualisasikan hasilnya alih-alih hanya mencetaknya.

Untuk contoh ini, kode plotting sudah tersedia, sehingga Anda hanya perlu menyelesaikan logika di dalam for loop dan inisialisasi variabel yang akan diperbarui pada setiap iterasi.

Latihan ini adalah bagian dari kursus

Pengantar Konsep Keuangan dengan Python

Lihat Kursus

Petunjuk latihan

  • Simpan saja interest_paid dan principal_paid untuk setiap periode.
  • Hitung principal_remaining untuk setiap periode berdasarkan pembayaran pokok dan pokok yang tersisa.
  • Jalankan kode yang disediakan untuk membuat plot pembayaran bunga vs pokok bulanan.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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()
Edit dan Jalankan Kode