pmt = [0,0,0,0] #劉任昌程式設計586設定串列list pmt[0]=float(input('躉繳金額: ')) for nper in range(1,4): pmt[nper] = float(input('第'+str(nper)+'期回收: ')) def npv(rate): y = - pmt[0] for j in range(1,4): y = y + pmt[j]/(1+rate)**j return y a, b, gap, f = 0.0, 1.0, 9.0, 9.0 maxerror = 0.000001 loopNumber = 1 while (gap > maxerror and abs(f) > maxerror and loopNumber < 100): loopNumber+=1 c = (a+b)/2; f = npv(c); if ( abs(f) > maxerror and gap > maxerror): if ( f>0 ): a = c else: b = c gap = b-a; print('徐語妏報酬率: ', c) print('徐語妏淨現值: ', f) print('徐語妏迴圈次數: ', loopNumber) 心得:透過這堂課我學習到很多,也收穫很多,謝謝老師這學期的教導,受益匪淺。
你太含蓄,沒寫自己名字。https://xxxjkxxthf.blogspot.com/2024/12/215bro-code-7-8-9-4-5-6-1-2-3-0.html
回覆刪除