为了账号安全,请及时绑定邮箱和手机立即绑定

关于Python二分法求值的一个问题!求哥哥们快来帮忙!小白比较弱。。。。。

关于Python二分法求值的一个问题!求哥哥们快来帮忙!小白比较弱。。。。。

asdhjhg 2017-03-30 22:47:29
#下面的代码是二分法求信用卡每月最低还款的题,这是正确代码 def pay(balance,annualInterestRate):     if balance<=0:         return None     low=balance/12.0     high=(balance*(1+annualInterestRate/12.0)**12)/12.0     while True:         b=balance         pay2=(low+high)/2         for i in range(12):             b=(b-pay2)*(1+annualInterestRate/12.0)         if abs(b)<=0.01:             return pay2         elif b>0.01:             low=pay2         else:             high=pay2 print pay(320000,0.2) #这是错误代码!请问这下面应该怎么改,应该是错在while的代码块!求问用while写的话怎么改?? def pay(balance,annualInterestRate):     if balance<=0:         return None     b=balance     low=b/12.0     high=(b*(1+annualInterestRate/12.0)**12)/12.0     pay2=(low+high)/2     while b>0.01:         if pay2>b*(1+annualInterestRate/12):             high=pay2         else:             low=pay2         pay2=(low+high)/2.0         b=(b-pay2)*(1+annualInterestRate/12.0)     return pay2 print pay(320000,0.2)还想弱弱的问一下?这个能不能通过牛顿拉夫逊算法计算?
查看完整描述

目前暂无任何回答

  • 0 回答
  • 0 关注
  • 1206 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信