%USANDO EL COMANDO eval() lo cual evita que se vectorize demasiado el código
clear all;
clc;
fprintf('\nCalculo de la raiz de una ecuacion por el metodo de la Secante\n\n');
f=input('Dame la funcion f(x) : ','s');
x0=input('Dame el valor del intervalo inferior de x : ');
x1=input('Dame el valor del intervalo superior de x : ');
e=input('Dame el porciento del error : ');
ea=1000;
c=1;
while ea>e
x=x0;
g=eval(f);
x=x1;
gg=eval(f);
xi=x1-((gg*(x0-x1))/(g-gg));
ea=abs((xi-x1)/xi)*100;
x0=x1;
x1=xi;
c=c+1;
end
fprintf('\n\n\n\nLa raiz exacta es: %d',xi)
fprintf('\n\nNumero de iteraciones: %d\n',c);
Hola!
ResponderEliminarPrimero que todo gracias por el código, me ha ayudado bastante. Solo tengo una duda, en tu caso, "ea=1000;" por qué es? es decir, por qué 1000? Gracias de antemano.
Es un numero de Iteracciones Maximas que hace el programa la puedes cambiar
EliminarGracias! :)
EliminarEste comentario ha sido eliminado por el autor.
ResponderEliminar