% Definir a função fun % fun=@(x) 'expressão' % Definir a derivada da função: dfun % dfun=@(x) 'expressão' function [xk] = Newton_Raphson(fun,dfun,x0,precisao) imax = 100; %Número máximo de iterações err = 100; i=0; %Contador para estimar o número de iterações xold = x0; %Chute Inicial fprintf('Método de Newton Raphson com dado inicial %2.4f com precisão igual a %s%.10f',x0, precisao); fprintf('\n| k | x[k] | f(x[k]) | df(x[k]) | x[k+1] | ER | \n|======|================|==================|==================|==================|=================|\n'); while (err > precisao && i <= imax) i = i + 1; f = fun(xold); df = dfun(xold); xnew = xold - f/df; if (i > 1) err = abs(xnew - xold); %abs((xnew - xold)/xnew) end fprintf('| %3d | %12.8f | %12.8f | %12.8f | %12.8f | % 12.6e |\n', i-1, xold,f,df, xnew,err); xold = xnew; end