攤銷表 (Amortization Table)


攤銷表 (Amortization Table) 其實就是分期付款的賬戶明細表,其中列出了一段時間內分期付款的每期常規付款狀況。每筆付款的一部分將用於償還本金餘額,而另一部分則是利息。 攤銷表將詳細列出此分期付款賬戶每期付款的每一部分金額。
編寫一個程式,由使用者輸入貸款金額、期限、以及利率,而後以表格形式列印出攤銷表。

# Amortization Table

loan = float(input("Your loan amount: "))
term = int(input("Term in months: "))
intp = float(input("Interest Rate (in %): "))

int = intp / 100
payment = loan * ((int/12) * (1 + int/12) ** term) / ((1 + int/12) ** term - 1)
print()
print("     ","   Initial  ","            ","            ","            ","    Ending")
print("     ","   Balance  ","   Payment  ","  Interest  "," Principal  ","   Balance")
print("     ","----------  ","----------  ","----------  ","----------  ","----------")
end_balance = loan
total_payment = 0
total_interest = 0
total_principal = 0
for n in range(1,term+1):
   ini_balance = end_balance
   interest_pmt = ini_balance * (int/12)
   principal_pmt = payment - interest_pmt
   end_balance = ini_balance - principal_pmt
   total_payment += payment
   total_interest += interest_pmt
   total_principal += principal_pmt
   print("{:3d} ${:10,.2f} ${:10,.2f} ${:10,.2f} ${:10,.2f} ${:10,.2f}"
      .format(n,ini_balance,payment,interest_pmt,principal_pmt,end_balance))

print()
print("Total Payment in {:3d} Months = ${:,.2f}".format(term,total_payment))
print("Total Interest Paid = ${:,.2f} | Total Principal Paid = ${:,.2f}"
   .format(total_interest,total_principal))

在此示例中,我們以貸款額 (loan amount) 30000,期限 (term) 36 (月),利率 (interest rate) 2.9 (%) 為例,得出的攤銷表如下
Your loan amount: 30000
Term in months: 36
Interest Rate (in %): 2.9

         Initial                                              Ending
         Balance      Payment     Interest    Principal      Balance
      ----------   ----------   ----------   ----------   ----------
  1  $ 30,000.00  $    871.11  $     72.50  $    798.61  $ 29,201.39
  2  $ 29,201.39  $    871.11  $     70.57  $    800.54  $ 28,400.84
  3  $ 28,400.84  $    871.11  $     68.64  $    802.48  $ 27,598.36
  4  $ 27,598.36  $    871.11  $     66.70  $    804.42  $ 26,793.94
  5  $ 26,793.94  $    871.11  $     64.75  $    806.36  $ 25,987.58
  6  $ 25,987.58  $    871.11  $     62.80  $    808.31  $ 25,179.27
  7  $ 25,179.27  $    871.11  $     60.85  $    810.26  $ 24,369.00
  8  $ 24,369.00  $    871.11  $     58.89  $    812.22  $ 23,556.78
  9  $ 23,556.78  $    871.11  $     56.93  $    814.19  $ 22,742.59
 10  $ 22,742.59  $    871.11  $     54.96  $    816.15  $ 21,926.44
 11  $ 21,926.44  $    871.11  $     52.99  $    818.13  $ 21,108.31
 12  $ 21,108.31  $    871.11  $     51.01  $    820.10  $ 20,288.21
 13  $ 20,288.21  $    871.11  $     49.03  $    822.08  $ 19,466.13
 14  $ 19,466.13  $    871.11  $     47.04  $    824.07  $ 18,642.06
 15  $ 18,642.06  $    871.11  $     45.05  $    826.06  $ 17,815.99
 16  $ 17,815.99  $    871.11  $     43.06  $    828.06  $ 16,987.93
 17  $ 16,987.93  $    871.11  $     41.05  $    830.06  $ 16,157.87
 18  $ 16,157.87  $    871.11  $     39.05  $    832.07  $ 15,325.81
 19  $ 15,325.81  $    871.11  $     37.04  $    834.08  $ 14,491.73
 20  $ 14,491.73  $    871.11  $     35.02  $    836.09  $ 13,655.63
 21  $ 13,655.63  $    871.11  $     33.00  $    838.11  $ 12,817.52
 22  $ 12,817.52  $    871.11  $     30.98  $    840.14  $ 11,977.38
 23  $ 11,977.38  $    871.11  $     28.95  $    842.17  $ 11,135.21
 24  $ 11,135.21  $    871.11  $     26.91  $    844.20  $ 10,291.01
 25  $ 10,291.01  $    871.11  $     24.87  $    846.24  $  9,444.76
 26  $  9,444.76  $    871.11  $     22.82  $    848.29  $  8,596.47
 27  $  8,596.47  $    871.11  $     20.77  $    850.34  $  7,746.13
 28  $  7,746.13  $    871.11  $     18.72  $    852.39  $  6,893.74
 29  $  6,893.74  $    871.11  $     16.66  $    854.45  $  6,039.28
 30  $  6,039.28  $    871.11  $     14.59  $    856.52  $  5,182.76
 31  $  5,182.76  $    871.11  $     12.53  $    858.59  $  4,324.17
 32  $  4,324.17  $    871.11  $     10.45  $    860.66  $  3,463.51
 33  $  3,463.51  $    871.11  $      8.37  $    862.74  $  2,600.76
 34  $  2,600.76  $    871.11  $      6.29  $    864.83  $  1,735.93
 35  $  1,735.93  $    871.11  $      4.20  $    866.92  $    869.01
 36  $    869.01  $    871.11  $      2.10  $    869.01  $      0.00

Total Payment in  36 Months = $31,360.13
Total Interest Paid = $1,360.13 | Total Principal Paid = $30,000.00