#this works in python 3
def pi_sum(n):
total, k = 0,1
while k <= n:
total, k = total +8 /(k *(k+2)), k + 4
return total
#this is how i tried to fix it for python 2
def pi_sum2(n):
total, k = 0,1
while k <= n:
total, k = float(total +8) /(k *(k+2)), k + 4
return total
В питоне 2: для pi_sum2(1e6)
я получаю 8.000032000112001e-12
.Что здесь не так?
РЕДАКТИРОВАТЬ выше моей первой ошибки было применение float как к итоговому, так и к 8 .. я должен был сделать: