Code : Tout sélectionner
secante(f,x0,x1,N):={
local xn, k, x;
f:=unapply(f,x);
k:=0;
xn:=x1-f(x1)*(x1-x0)/(f(x1)-f(x0));
tantque abs(f(x1)-f(x0))>epsilon et k<N faire
x0:=x1;
x1:=xn;
xn:=x1-f(x1)*(x1-x0)/(f(x1)-f(x0));
k:=k+1;
ftantque;
retourne evalf(xn);
}:;
J'aimerais comprendre pourquoi...
Par ailleurs, l'utilisation de epsilon est-elle bien nécessaire ? le code :
Code : Tout sélectionner
secante(f,x0,x1,N):={
local xn, k, x;
f:=unapply(f,x);
k:=0;
xn:=x1-f(x1)*(x1-x0)/(f(x1)-f(x0));
tantque f(x0)!=f(x1) and k<N faire
x0:=x1;
x1:=xn;
xn:=x1-f(x1)*(x1-x0)/(f(x1)-f(x0));
k:=k+1;
ftantque;
retourne evalf(xn);
}:;
Quels sont les cas pathologiques ?
merci de votre aide
Maurice