1 回答

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超4個(gè)贊
我認(rèn)為這就是您要實(shí)現(xiàn)的目標(biāo)。切換到 while 循環(huán)更合適,因?yàn)槟淮_定需要循環(huán)多少次。只要 x 大于 0,這種情況就會(huì)繼續(xù)。
循環(huán)方法
x = (SA + (AI / 12) * SA) - MP
payment_number = 0
while x > 0:
x = (x + (AI / 12) * x) - MP
CIwoP = (x + (AI / 12) * x) - x # interest every month
ptd = MP * payment_number # payment to date
payment_number += 1
print(payment_number) # payment no.
print(ptd) # amount paid to date
print(CIwoP) # interest for that month
print(x) # balance for each month after payment
遞歸方法
def remainb(x, payment_number=0):
if x < 0: return
x = (x + (AI / 12) * x) - MP
CIwoP = (x + (AI / 12) * x) - x # interest every month
ptd = MP * payment_number # payment to date
payment_number += 1
print(payment_number) # payment no.
print(ptd) # amount paid to date
print(CIwoP) # interest for that month
print(x) # balance for each month after payment
remainb(x, payment_number)
順便提一下,使用良好的描述性變量名稱而不是 x 是一個(gè)好習(xí)慣,我 :)
添加回答
舉報(bào)