Breaken mehrerer Rekursioninstanzen
Verfasst: Montag 27. Mai 2019, 19:19
Hey,
Im Rahmen meines Algorithmische Mathematik Moduls müssen wir mit Hilfe von Intervallschachtelung eine Funktion untersuchen, während ich den Code dafür geschrieben habe ist mir allerdings ein Problem gekommen. Mein Code sieht momentan folgendermaßen aus:
Das "Mitschleppen" der Liste ist aber irgendwie sehr unoptimal, lieber hätte ich den Code eher so:
Jedoch wird mir dann logischerweise None ausgegeben, da ich ja nur die erste Rekursionsinstanz aufrufe.
Gibt es eine Möglichkeit, das ganze schöner zu lösen als mit der Liste ?
Vielen Dank im Voraus
Im Rahmen meines Algorithmische Mathematik Moduls müssen wir mit Hilfe von Intervallschachtelung eine Funktion untersuchen, während ich den Code dafür geschrieben habe ist mir allerdings ein Problem gekommen. Mein Code sieht momentan folgendermaßen aus:
Code: Alles auswählen
import numpy as np
def func(x):
return x
def func_deriv(x):
return 1
def Intervalle(von,bis,res):
if np.abs(von-bis) < 10.e-10:
res.append(von)
return
if (func(von)<0 and func(bis)>=0) or (func(von)>=0 and func(bis)<0):
Intervalle(von, (von+bis)/2,res)
Intervalle((von+bis)/2,bis,res)
else:
return
return
Code: Alles auswählen
def Intervalle(von,bis):
if np.abs(von-bis) < 10.e-10:
return von
if (func(von)<0 and func(bis)>=0) or (func(von)>=0 and func(bis)<0):
Intervalle(von, (von+bis)/2,res)
Intervalle((von+bis)/2,bis,res)
Gibt es eine Möglichkeit, das ganze schöner zu lösen als mit der Liste ?
Vielen Dank im Voraus