We noemen $$x^*$$ een fixpunt van de reƫle functie $$f(x)$$ indien geldt dat $$f(x^*) = x^*$$. In deze oefening gaan we op zoek naar een dergelijk fixpunt, startend met een beginschatting $$x_0$$, via volgende aanpak:

  1. indien het maximaal aantal iteraties bereikt is, dan is $$x_0$$ het gezochte fixpunt, en keert de functie terug
  2. indien $$|f(x_0) - x_0| < \epsilon$$, dan is $$x_0$$ het gezochte fixpunt en keert de functie terug
  3. ken de waarde van $$f(x_0)$$ toe aan $$x_0$$
  4. verhoog het aantal gebruikte iteraties met 1
  5. ga naar stap 1

Schrijf de functie fixpunt() met volgende argumenten:

Het resultaat van de functie is een tuple, bestaande uit de huidige benadering voor het fixpunt, gevolgd door het aantal iteraties nodig om de benadering te vinden


LET OP: je code MOET recursief geprogrammeerd worden, en mag dus geen lusconstructies of comprehensies bevatten.

Voorbeeld

fixpunt(lambda x:math.sin(x), 1.0, 0.001, 100) = (0.18143335721992923, 86)
fixpunt(lambda x:math.sin(x), 1.0, 0.001, 10) = (0.46295789853781183, 10)