私はpythonを初めて使いました。自分のやり方をMIT OCW 6.001で学び、Pythonでのコンピュータサイエンスとプログラミングの紹介。住宅ローンを確保するために収入の一部を計算するスクリプトを作成する必要があります。私は二分法を使用して、その部分を見つけ出しておく必要があります。スクリプトを実行すると、私の関数 'savings'が0の位置引数を取るが、1が与えられたことについて、怒っているテキストがたくさんある。私はそれが何を意味するのか分かりません。助けてください!住宅ローンの貯蓄率を計算しようとしています
は、ここでは、コードです:
"""
Created on Thu Mar 16 12:51:41 2017
@author: [redacted]
"""
num_guesses = int(0)
current_savings = int(0)
annual_salary = input('enter your annual salary:')
r = float(.04)
raise_pct = float (.07)
high = pct_saved = float(1.0)
low = 0
def savings():
total_savings = 0
num_months = 0
monthly_salary = int(annual_salary)/12
portion_saved = pct_saved*monthly_salary
for num_months in range(0,35):
num_months += 1
total_savings += (current_savings*r)/12 + portion_saved
if (num_months%6) == 0 :
monthly_salary += monthly_salary*raise_pct
portion_saved = monthly_salary*pct_saved
return total_savings
cost = 250000
epsilon = float(.001)
guess = (low + high)/2.0
if savings(high) < cost:
num_guesses += 1
print ('You cannot afford this house.')
while abs(savings(guess))-cost >= epsilon:
if savings(guess) < cost:
low = guess
else:
high = guess
guess = (high + low)/2.0
num_guesses += 1
print ('Number of guesses:', num_guesses)
print ('Savings percent is near:', pct_saved)
私は、インタプリタで関数を使って遊んで、それらを把握することをお勧めします。 – Denziloe