Hướng dẫn python monthly payment function - chức năng thanh toán hàng tháng python


Bạn có thể sử dụng chức năng sau trong Python để tính toán các khoản thanh toán hàng tháng cần thiết để thanh toán một khoản vay nhất định, với quy mô ban đầu của khoản vay, thời hạn của khoản vay và lãi suất hàng năm:

(rate/12) * (1/(1-(1+rate/12)**(-months)))*P

Các ví dụ sau đây cho thấy cách sử dụng chức năng này trong các kịch bản khác nhau.

Ví dụ 1: Tính toán các khoản thanh toán khoản vay cho thế chấp

Giả sử một gia đình lấy một khoản vay thế chấp cho một ngôi nhà với các chi tiết sau:

  • Số tiền thế chấp: 200.000 đô la
  • Số tháng: 360
  • Lãi suất hàng năm: 4%

Chúng tôi có thể sử dụng mã sau & nbsp; để tính toán khoản thanh toán cho vay hàng tháng cần thiết: to calculate the necessary monthly loan payment:

#define initial size of loan, duration of loan, and annual interest rate
P = 200000
months = 360
rate = .04

#calculate monthly payment
(rate/12) * (1/(1-(1+rate/12)**(-months)))*P

954.8305909309076

Khoản thanh toán khoản vay hàng tháng là $ 954,83. Đây là số tiền gia đình phải trả mỗi tháng để trả khoản vay 200.000 đô la trong 360 tháng.$954.83. This is how much the family must pay each month in order to pay off the $200,000 loan in 360 months.

Ví dụ 2: Tính toán các khoản thanh toán cho vay cho khoản vay xe

Giả sử một cá nhân lấy một khoản vay cho một chiếc xe với các chi tiết sau:

  • Số tiền cho vay: 20.000 đô la
  • Số tháng: 60
  • Lãi suất hàng năm: 3%

Chúng tôi có thể sử dụng mã sau & nbsp; để tính toán khoản thanh toán cho vay hàng tháng cần thiết: to calculate the necessary monthly loan payment:

#define initial size of loan, duration of loan, and annual interest rate
P = 20000
months = 60
rate = .03

#calculate monthly payment
(rate/12) * (1/(1-(1+rate/12)**(-months)))*P

359.3738132812698

Khoản thanh toán khoản vay hàng tháng là $ 954,83. Đây là số tiền gia đình phải trả mỗi tháng để trả khoản vay 200.000 đô la trong 360 tháng.$359.37. This is how much the individual must pay each month in order to pay off the $20,000 loan in 60 months.

Ví dụ 2: Tính toán các khoản thanh toán cho vay cho khoản vay xe

Giả sử một cá nhân lấy một khoản vay cho một chiếc xe với các chi tiết sau:

  • Số tiền cho vay: 20.000 đô la
  • Số tháng: 60
  • Lãi suất hàng năm: 3%

Chúng tôi có thể sử dụng mã sau & nbsp; để tính toán khoản thanh toán cho vay hàng tháng cần thiết: to calculate the necessary monthly loan payment:

#define initial size of loan, duration of loan, and annual interest rate
P = 40000
months = 120
rate = .052

#calculate monthly payment
(rate/12) * (1/(1-(1+rate/12)**(-months)))*P

428.18316863206525

Khoản thanh toán khoản vay hàng tháng là $ 954,83. Đây là số tiền gia đình phải trả mỗi tháng để trả khoản vay 200.000 đô la trong 360 tháng.$428.18. This is how much the individual must pay each month in order to pay off the $40,000 loan in 120 months.

Ví dụ 2: Tính toán các khoản thanh toán cho vay cho khoản vay xe

Giả sử một cá nhân lấy một khoản vay cho một chiếc xe với các chi tiết sau:

Số tiền cho vay: 20.000 đô la
How to Calculate Moving Averages in Python
How to Calculate Correlation in Python

Hãy nói rằng bạn mua một món đồ nội thất với giá 120 đô la và bạn sẽ thực hiện thanh toán trong 12 tháng tới về nó mà không có hứng thú. Tôi đang cố gắng thực hiện một chương trình nơi nó cho bạn biết khoản thanh toán mỗi tháng trong 12 tháng tới. Chương trình tôi đã thực hiện cho bạn biết khoản thanh toán/số tiền hàng tháng trong tháng đầu tiên nhưng nó chỉ sao chép tháng đầu tiên trong tất cả 12 tháng và tôi đã tự hỏi liệu ai đó có thể dẫn tôi đi đúng hướng để số tiền đến hạn trong tất cả 12 tháng . Tôi biết tôi đang làm rối một số phương trình nhưng không thể nghĩ ra nó. Tôi vẫn còn rất mới ở Python và gặp một số rắc rối. Đây là những gì tôi đã làm:

purchasePrice = input("Enter purchase price")
purchasePrice = int(purchasePrice)
month = 1
 while month <=12:
  print (month)
  month = month + 1
  monthlyPayment = purchasePrice/12
  amountDue = purchasePrice - monthlyPayment 
  print ("Monthly payment", monthlyPayment)
  print ("Amount due: ", amountDue)

Và đầu ra của tôi là:

Enter purchase price 120
1
Monthly payment 10.0
Amount due:  110.0
2
Monthly payment 10.0
Amount due:  110.0
3
Monthly payment 10.0
Amount due:  110.0
4
Monthly payment 10.0
Amount due:  110.0

Và điều đó diễn ra cho đến tháng 12

Đã hỏi ngày 14 tháng 10 năm 2017 lúc 0:57Oct 14, 2017 at 0:57

3

Vấn đề là mỗi lần trong khi dòng này chạy số lượng = mua hàng - mua hàng tháng mua hàng = 120 và hàng tháng thanh toán = 10 vì vậy số tiền không thay đổi. Bạn cần nhân số tháng để thanh toán hàng tháng để xem bạn đã trả bao nhiêu lần thanh toán hàng tháng. Và thay đổi chuỗi dòng vì tháng đã bằng 1. vì vậy mã của bạn sẽ trông giống như

purchasePrice = input("Enter purchase price")
purchasePrice = int(purchasePrice)
month = 1
while month <=12:
  print (month)
  monthlyPayment = purchasePrice/12
  amountDue = purchasePrice - monthlyPayment * month
  month = month + 1
  print ("Monthly payment", monthlyPayment)
  print ("Amount due: ", amountDue)

Đã trả lời ngày 14 tháng 10 năm 2017 lúc 1:30Oct 14, 2017 at 1:30

Bạn có nhiều biến được khai báo bên trong vòng lặp. Khi bạn khai báo một biến bên trong một vòng lặp, nó sẽ bị phá hủy và ghi đè lên từng lần lặp của vòng lặp. Bạn muốn khai báo các biến bên ngoài vòng lặp để bảo quản chúng cho mỗi lần lặp.

purchasePrice = input("Enter purchase price")
purchasePrice = int(purchasePrice)

#Variable declaration for preservation.
month = 1
monthlyPayment = purchasePrice/12
ammountDue = purchasePrice

while month <=12:
    print (month)
    ##This is a condensed way of doing 'month = month + 1'
    month += 1
    ##Again this is a condensed form of 'amountDue = amountDue - monthlyPayment'
    amountDue -= monthlyPayment 
    print ("Monthly payment", monthlyPayment)
    print ("Amount due: ", amountDue)

Bây giờ hình thức cơ sở đang hoạt động, chúng ta có thể ngưng tụ mã thành một cái gì đó sạch hơn một chút và nói chung ít mã hơn.

Mẫu sạch hơn: sửa đổi:

##Condensed two lines into one.
purchasePrice = int(input("Enter purchase price"))

#Variable declaration for preservation.
monthlyPayment = purchasePrice/12

##Changing from a while loop to a for loop lets us remove the month variable
for x in range(1, 13)
    print (x)
    print ("Monthly payment", monthlyPayment)
    ##Here we get rid of the amountDue variable and just perform the calculation in the output
    print ("Amount due: ", purchasePrice -((purchasePrice/12)*x))

Đã trả lời ngày 14 tháng 10 năm 2017 lúc 1:38Oct 14, 2017 at 1:38