Warum endet der folgende Code nicht?Berechnung der Quadratwurzel von 2
# approximating sqrt(2)
def approx (error,left, right):
c = (left+right)/2
f = c**2 - 2
if abs(f)<error :
return c
if f < 0:
left = c
else:
right = c
return approx(error,left,right)
print approx(0.1,0,2)
Versuchen Sie mit Ihrem Debugger: Schritt durch den Code und sehen, was passiert. – Blorgbeard
Außerdem: Hier ist keine Rekursion erforderlich. Setzen Sie den Code einfach in 'while True:'. – Blorgbeard